如何编码? - 页 3

 

关于mql4的代码

我想把最高价和最低价放在当前图表中。

但我不知道如何通过MQL4在我的指标中写代码。

非常感谢!

 

移动止损的代码?

大家好。

目前我正在编写一个自动交易的EA,它即将完成,但我不知道如何在开仓交易中移动止损。

这是打开长线头寸的代码部分。

{

if(//long entry criteria met)

{

if (priorbartime == Time[0])

return(0);

priorbartime = Time[0];

Alert("Long Signal");

ObjectCreate(arrowlong, OBJ_ARROW, 0, Time[0], Open[0], 0, 0, 0, 0);

ObjectSet(arrowlong, OBJPROP_ARROWCODE, 233);

ObjectSet(arrowlong, OBJPROP_COLOR, Aqua);

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Ask-StopLoss*Point,Ask+TakeProfit*Point,"am crossing",16677,0,Green); // HDB CHANGED Close TO Ask and SlipPage to 0

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());

}

else Print("Error opening BUY order : ",GetLastError());

return(0);

}

}

[/PHP]

then once the trade is open I want to manage it by moving stop to -5 when the trade is +15, and by moving stop to b/e when trade is +20. this is the code i have come up with so far but it doesnt seem to be working:

[PHP]

total=OrdersTotal();

if(total>0)

{

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol())

{

if(Bid-OrderOpenPrice()==Point*15)

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-Point*5,OrderTakeProfit(),0,Blue);

return(0);

}

if(Bid-OrderOpenPrice()==Point*20)

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Blue);

return(0);

}

}

}

}

如前所述,这都是针对长线仓位的。

感谢任何帮助!

分歧交易员

 

许多人已经多次询问过这个问题。

所以请阅读。

-这个帖子

- 篇文章和

-这个Codersguru主题

 

谢谢newdigital,我在SBFX、metaquotes和这里看了很多线程,但都没有找到我想要的东西,希望这些会有帮助!"。

 

试试这个。

total=OrdersTotal();

if(total>0){

for(cnt=0;cnt<total;cnt++){

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol()){

if(Bid-OrderOpenPrice()>=Point*15 && Bid-OrderOpenPrice()<Point*20 && OrderStopLoss()< OrderOpenPrice()-5*Point){

OrderModify(OrderTicket(),OrderOpenPrice()-Point*5,OrderTakeProfit(),Blue);

}

if(Bid-OrderOpenPrice()>=Point*20 && OrderStopLoss()< OrderOpenPrice()){

OrderModify(OrderTicket(),OrderOpenPrice(),OrderTakeProfit(),Blue);

}

}

}

}
 

像这样的

 

MA水平的代码

我试图写一个MA级别的代码,但它不工作 ...

有谁能告诉我如何做呢,请。

谢谢

附加的文件:
levels.png  20 kb
 
mas:
你好

我试图写一个MA级别的代码,但它不工作...。

有谁能告诉我怎么做呢?

谢谢

你可以使用Vegas Currancy Daily指标作为指导。 见附件。

凯丽斯

附加的文件:
 
Nicholishen:
试试这个。

谢谢Nicholishen,你的代码工作得非常好。直到现在才有机会在真实的市场中测试,但所有的工作都很好,再次感谢!

 

要求。亏损交易后将手数增加一倍的EA代码。

我想知道是否有办法告诉EA在最后一笔交易亏损时增加手数(马丁格尔系统),而在最后一笔交易盈利时使用正常手数。它需要能够使用微型手。有什么方法可以做到这一点吗?

原因: