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:
关于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级别的代码,但它不工作 ...
有谁能告诉我如何做呢,请。
谢谢
你好
我试图写一个MA级别的代码,但它不工作...。
有谁能告诉我怎么做呢?
谢谢你可以使用Vegas Currancy Daily指标作为指导。 见附件。
凯丽斯
试试这个。
谢谢Nicholishen,你的代码工作得非常好。直到现在才有机会在真实的市场中测试,但所有的工作都很好,再次感谢!
要求。亏损交易后将手数增加一倍的EA代码。
我想知道是否有办法告诉EA在最后一笔交易亏损时增加手数(马丁格尔系统),而在最后一笔交易盈利时使用正常手数。它需要能够使用微型手。有什么方法可以做到这一点吗?