帮我在酒吧的末端关闭秩序! - 页 3 1234 新评论 Proximus 2013.10.28 19:11 #21 RaptorUK: 是的,start()是为每个tick调用的,除非它仍在执行中。 是的,但这不是你在这个主题的第一篇帖子中所要求的 ......现在你说的是,收盘价被延迟到周期和另一个周期,等等,都是可以的。如果你想在接近条形结束时收盘,那么你必须在下一个条形的第一个点上收盘,而且你必须检查收盘是否失败,并以正确的方式重试,这样你才能成功收盘。 我没有其他的解决方案。如果我有,我会做这些。 SDC: 一个柱状图的收盘价不重复出现在下一个柱状图上是很罕见的,不一定是其开盘价...... 是的,有时一根蜡烛的开盘价低于或高于前一根蜡烛的收盘价,有时正好在那个水平上。但有时会出现这些缺口,破坏了一切,这就是为什么我希望有一个更好的解决方案,以避免这些,但现在我看到它不可能。 Proximus 2013.10.30 13:06 #22 问题,大问题。 /////////////////OrderSelect() and other stuff if( OrderType() == OP_BUY ){ if( /* blablabla condition && */ Time[0]>OrderOpenTime() ){ OrderClose( OrderTicket(), OrderLots(),OrderClosePrice() ,TAKEPROFITPIPS,CLR_NONE); RefreshRates(); }} 所以我用这段代码在最接近蜡烛末端的时候关闭了那笔讨厌的交易,但问题是在回溯测试中,它像魔法一样工作,但当我在真实的模拟账户 上尝试时,它非常愚蠢。它在开仓后就开始关闭头寸。我不明白为什么,因为Time[0]应该是当前柱状图的开仓时间,而当交易在蜡烛开仓后投入时,它怎么可能比当前时间大?这简直是无稽之谈。 但仍然是这样,所以为了排除任何错误,我只用了。 if( Time[0]>OrderOpenTime() ) 在if中这样做,以排除其他干扰,但是是的,问题出在这个测试上。 Time[0]>OrderOpenTime() 我怎样才能绕过它,或者有人能找到另一个与此相当的测试,在真实账户上也能工作,请帮助我! Simon Gniadkowski 2013.10.30 13:45 #23 Proximus: 问题,大问题。 所以我用这段代码在最接近蜡烛末端的时候关闭了那笔讨厌的交易,但问题是在回溯测试中,它像魔法一样工作,但当我在真实的模拟账户上尝试时,它非常愚蠢。它在开仓后就开始关闭头寸。我不明白为什么,因为Time[0]应该是当前柱状体的开仓时间,而当交易在蜡烛开仓后投入时,它怎么可能比当前时间大?这简直是无稽之谈。 它已经发生了,所以要找到原因 ... ...例如,如果你的OrderSelect()失败了(你是否检查它是否成功或失败?),那么OrderType()将返回错误的值或正确的值,只是偶然的,OrederOpenTime()将返回错误的值 ... ...也许是0,0小于Time[0] ...当试图找出问题所在时,你是否打印OrderOpenTime()的值?为什么不? 我一直发布这个链接是有原因的 . .什么是函数的返回值?如何使用它们? 为什么你总是忽视好的建议? Ian Venner 2013.10.30 17:27 #24 Proximus: 我没有其他的解决方案。如果我有的话,我会做这些。 是的,有时一个条形图的开盘价低于或高于前一根蜡烛的收盘价,有时正好在这个水平上。但有时会出现这些缺口,破坏了一切,这就是为什么我希望有一个更好的解决方案,以避免这些,但现在我看到它不可能。 必须是准确的收盘价 吗?如果它们到达的速度很快,比如每秒1次,那么在距离收盘时间不到5秒的时候,就取其价格;如果它们到达的速度很慢,比如每分钟1次,那么在最后30秒的时候,就取其价格;如果在这段时间内没有嘀嗒声到达,就取其后的开盘价格。 Proximus 2013.10.30 19:37 #25 SDC: 必须是精确的收盘价吗?如果它们到达的速度很快,比如每秒1次,那么在距离收盘时间不到5秒的时候,就取其价格;如果它们到达的速度很慢,比如每分钟1次,那么在最后30秒的时候,就取其价格;如果在这段时间内没有嘀嗒声到达,就取其后的开盘价格。 不一定非要精确到Close[1],因为在之前的帖子中我们已经排除了不可能精确到那个水平的可能性。 Mehmet Bastem 2013.10.30 22:25 #26 成交量[0]==1;//新柱子=关闭最后一个柱子。 或者。 bool NewBar() { static datetime lastbar; datetime curbar = Time[0]; 如果(lastbar!=curbar) { lastbar=curbar。 返回(true)。 } 否则 { return(false); } } 如果(Signal=="BUY" && NewBar()) Proximus 2013.10.30 23:16 #27 谢谢你的帮助,我解决了这个问题,实际上是我同时打开 了许多图表,但所有的图表都有相同的魔法编号,现在它们有随机生成的编号,所以它是好的。 jonjonfx 2014.06.19 09:15 #28 你好。有什么方法可以在H4时间框架的条形图结束前5分钟关闭未结头寸? 谢谢 Boeing747 2014.06.19 11:32 #29 jonjon:你好。有什么方法可以在H4时间框架的条形图结束前5分钟关闭未结头寸? 谢谢 是的,有 William Roeder 2014.06.19 13:00 #30 Mehmet: Volume[0]==1;//新条形 = 关闭的最后一个条形。 如果你错过了 一个条形图的第一个刻度,你的代码就会失败,并错过整个 条形图。始终使用时间。 播放视频请编辑 你的帖子。 对于大量的代码,请附上它。 1234 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
是的,start()是为每个tick调用的,除非它仍在执行中。
是的,但这不是你在这个主题的第一篇帖子中所要求的 ......现在你说的是,收盘价被延迟到周期和另一个周期,等等,都是可以的。如果你想在接近条形结束时收盘,那么你必须在下一个条形的第一个点上收盘,而且你必须检查收盘是否失败,并以正确的方式重试,这样你才能成功收盘。我没有其他的解决方案。如果我有,我会做这些。
一个柱状图的收盘价不重复出现在下一个柱状图上是很罕见的,不一定是其开盘价......
问题,大问题。
所以我用这段代码在最接近蜡烛末端的时候关闭了那笔讨厌的交易,但问题是在回溯测试中,它像魔法一样工作,但当我在真实的模拟账户 上尝试时,它非常愚蠢。它在开仓后就开始关闭头寸。我不明白为什么,因为Time[0]应该是当前柱状图的开仓时间,而当交易在蜡烛开仓后投入时,它怎么可能比当前时间大?这简直是无稽之谈。
但仍然是这样,所以为了排除任何错误,我只用了。
if( Time[0]>OrderOpenTime() )
在if中这样做,以排除其他干扰,但是是的,问题出在这个测试上。
我怎样才能绕过它,或者有人能找到另一个与此相当的测试,在真实账户上也能工作,请帮助我!
问题,大问题。
所以我用这段代码在最接近蜡烛末端的时候关闭了那笔讨厌的交易,但问题是在回溯测试中,它像魔法一样工作,但当我在真实的模拟账户上尝试时,它非常愚蠢。它在开仓后就开始关闭头寸。我不明白为什么,因为Time[0]应该是当前柱状体的开仓时间,而当交易在蜡烛开仓后投入时,它怎么可能比当前时间大?这简直是无稽之谈。
它已经发生了,所以要找到原因 ... ...例如,如果你的OrderSelect()失败了(你是否检查它是否成功或失败?),那么OrderType()将返回错误的值或正确的值,只是偶然的,OrederOpenTime()将返回错误的值 ... ...也许是0,0小于Time[0] ...当试图找出问题所在时,你是否打印OrderOpenTime()的值?为什么不?
我一直发布这个链接是有原因的 . .什么是函数的返回值?如何使用它们? 为什么你总是忽视好的建议?
我没有其他的解决方案。如果我有的话,我会做这些。
是的,有时一个条形图的开盘价低于或高于前一根蜡烛的收盘价,有时正好在这个水平上。但有时会出现这些缺口,破坏了一切,这就是为什么我希望有一个更好的解决方案,以避免这些,但现在我看到它不可能。必须是准确的收盘价 吗?如果它们到达的速度很快,比如每秒1次,那么在距离收盘时间不到5秒的时候,就取其价格;如果它们到达的速度很慢,比如每分钟1次,那么在最后30秒的时候,就取其价格;如果在这段时间内没有嘀嗒声到达,就取其后的开盘价格。
必须是精确的收盘价吗?如果它们到达的速度很快,比如每秒1次,那么在距离收盘时间不到5秒的时候,就取其价格;如果它们到达的速度很慢,比如每分钟1次,那么在最后30秒的时候,就取其价格;如果在这段时间内没有嘀嗒声到达,就取其后的开盘价格。
不一定非要精确到Close[1],因为在之前的帖子中我们已经排除了不可能精确到那个水平的可能性。
成交量[0]==1;//新柱子=关闭最后一个柱子。
或者。
bool NewBar()
{
static datetime lastbar;
datetime curbar = Time[0];
如果(lastbar!=curbar)
{
lastbar=curbar。
返回(true)。
}
否则
{
return(false);
}
}
如果(Signal=="BUY" && NewBar())
你好。
有什么方法可以在H4时间框架的条形图结束前5分钟关闭未结头寸? 谢谢
你好。
有什么方法可以在H4时间框架的条形图结束前5分钟关闭未结头寸? 谢谢
播放视频
对于大量的代码,请附上它。