有您的持续关注
我们会做得更好

移动止损的函数的一种简洁明了的写法



移动止损的函数的一种简洁明了的写法
extern int Magic = 20080829;
extern color clModify = Silver;
extern int TrailingStart = 30;
extern int TrailingSize = 30;
void TrailPositions()
{
int cnt = OrdersTotal();
for (int i=0; i<cnt; i++)
{
if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
if (OrderSymbol() != Symbol()) continue;
if (OrderMagicNumber() != Magic) continue;
int type = OrderType();
if (type == OP_BUY)
{
if (Bid-OrderOpenPrice() > TrailingStart*Point)
{
if (OrderStopLoss() < Bid – (TrailingSize+1)*Point)
{
OrderModify(OrderTicket(),
OrderOpenPrice(),
Bid-TrailingSize*Point,
OrderTakeProfit(), 0, clModify);
}
}
}
if (type == OP_SELL)
{
if (OrderOpenPrice()-Ask > TrailingStart*Point)
{
if (OrderStopLoss() > Ask + (TrailingSize+1)*Point || OrderStopLoss() == 0)
{
OrderModify(OrderTicket(),
OrderOpenPrice(),
Ask+TrailingSize*Point,
OrderTakeProfit(), 0, clModify);
}
}
}
}
}

如您喜欢此文章请点下面分享按钮↴峰汇在线 » 移动止损的函数的一种简洁明了的写法
上一篇:
下一篇:
分享到:更多 ()

评论 抢沙发

评论前必须登录!