externstring sComment4 = "Max Hours allowed before pending orders are deleted";
externint pendinglimit = 4;
// * EVERYTIME A TRADE GETS TRIGGERED
bartraded = TimeHour(TimeCurrent());
// DELETE PENDING ORDERS THAT HAVE NOT BEEN TRIGGERED WITHIN if(TimeHour(TimeCurrent()) > bartraded + pendinglimit && Tradeopen()==true) // Check to see if pending orders have expired
{
for(int tnumber = OrdersTotal()-1; tnumber >= 0 ; tnumber--) //scan through open orders
{
if (OrderSelect(tnumber, SELECT_BY_POS) &&
OrderType()==(OP_BUYSTOP||OP_SELLSTOP) && // The order selected is either a pending buy on stop order or a buy on sell orderOrderMagicNumber()==(Mnumber1||Mnumber3)) // The orders magic number is the same as the magic number used in this ea
{
OrderSelect(tnumber, SELECT_BY_POS); // Select orderOrderDelete(tnumber); // Delete it
}
}
}
嘿,Daz & Co,
hothand在五位数的MT4平台上工作,但在四位数的平台上不工作。
hothand在五位数的MT4上可以工作,但在四位数的平台上却不行。知道是什么原因造成的吗,有什么线索可以解决这个问题?
好了,我回来了。
这是我的代码中执行交易的部分,目前我只打算用5位数工作。这里的想法是我用我的hothand函数来选择哪一对是当天最好的交易。这段代码应该扫描1小时图上的内杠。(hothand函数返回一个货币对的字符串)当它找到一个内杠时,我只是让它为测试目的开出一个平仓买入或卖出交易。我不确定回测器 是否能处理一个图表中的多个货币对交易?我下载了它使用的所有货币对的1分钟历史。但它似乎只在金牛座上打开交易,也就是我所附的图表。
WHRoeder也感谢你的到来并再次提供帮助。那么,用EA开立交易的正确方法是先开立,然后在开立后再去填入sl和tp?我相信你也能发现这段代码有很多问题。
不调整4/5位数的滑移量。不兼容ECN
总是测试返回代码,这样你就能找到它不工作的原因。
buystop = iLow(hothand()...
你的止损是基于hothand()对,但你是用Symbol()开的单。如果它们不一样,止损就完全是假的。好了,我回来了。
这是我的代码中执行交易的部分,目前我只打算用5位数工作。这里的想法是我用我的hothand函数来选择哪一对是当天最好的交易。这段代码应该扫描1小时图上的内杠。(hothand函数返回一个货币对的字符串)当它找到一个内杠时,我只是让它为测试目的开出一个平仓买入或卖出交易。我不确定回测器是否能处理一个图表中的多个货币对交易?我下载了它使用的所有货币对的1分钟历史。但它似乎只在金牛座上打开交易,也就是我所附的图表。
一些一般性的评论:
,你在Ask 买入并在Bid 卖出。
如果你的经纪人是ECN类型的经纪人,你不能在下单时设置SL和TP(在这种情况下,将它们设置为0),你必须先下单,然后修改订单,添加SL和TP
始终检查 下单的结果,并检查返回的错误,你将需要通过相应的行动来处理这些错误。
如果你打算在多个图表上使用这个EA,即从多个图表下单,你将需要某种Mutex来避免Order Context Busy(查看WHRoeder的帖子,他有一个优秀的Mutex)。
但它似乎只在金牛座上打开交易,也就是我所附的图表。
是的,.. .
Symbol()是EA/Indicator所连接的货币对,你是想用这个来代替吗?
是的,我确实想这么做,但现在我得到了这个错误
http://clip2net.com/s/144hq
好像它不能识别hothand函数 的配对输出。hothand函数的输出是一个字符串,所以我不明白它为什么不能工作。
就像它不承认hothand函数的配对输出。hothand函数的输出是一个字符串,所以我不明白它为什么不能工作。
嘿,伙计们,我正试图编写一些代码,做以下工作
如果一个挂单 已经开了x个柱子,如果柱子数超过x,就删除它。
我的逻辑可能有问题吗?