[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 53 1...464748495051525354555657585960...537 新评论 v2812 2011.02.02 18:05 #521 当我在我的EA中开出一个印刷品时,我已经注意到了这样的细微差别,即。 double Up = iCustom(NULL, 0, "best div original", "*** CCI-OnArray Settings ***", 12, 3, 5, 25, "*** Indicator Settings ***", false, false, false, 0, 1)。 打印("+++++++++++++",向上)。 专家顾问显示以下结果 - ++++++++++++++ 2147483647。我可以看到向上和向下的缓冲区的数字是一样的。请告知这是什么类型的代码?那么如何在箭头出现时准确地从Ikastom "获得 "数值呢? [Archive!] Any rookie question, 终结者 v2.0 如何编码? [删除] 2011.02.02 18:07 #522 我请求有识之士的帮助:请告知正确的代码,以创建一个专家顾问/工具,其算法如下。 - 开启一个方向的双重交易(手数为0.1和0.1)是在当前图表/当前时间框架中最后形成的蜡烛的低点(卖出)/高点(买入)交叉的时刻,在该蜡烛的高点/低点附近停止,在该交叉点开启交易,并在挂单的同一点放置一个方向的双重交易,如0.2和0.1。 palesandr 2011.02.02 18:10 #523 问题。 有代码 int start() 如果(H==TimeHour(TimeCurrent())&& M==TimeMinute(TimeCurrent())&& S==TimeSeconds(TimeCurrent()) {+一些条件 然后订单被打开 Ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,SL,TP); if (Ticket > 0) Alert ("Buy order opened " ,Ticket); return;} 但如果此刻没有打勾,就不会被触发。 但如果我给它更多时间思考,它可能会开出几笔订单。 我应该只有一个订单,而不注意已经开出的订单。 请告知该怎么做 Владимир Тезис 2011.02.02 18:31 #524 v2812:当我在我的EA中开出一个印刷品时,我已经注意到了这样的细微差别,即。double Up = iCustom(NULL, 0, "best div original", "*** CCI-OnArray Settings ***", 12, 3, 5, 25, "*** Indicator Settings ***", false, false, false, 0, 1)。打印("+++++++++++++",向上)。专家顾问显示以下结果 - ++++++++++++++ 2147483647。我可以看到向上和向下的缓冲区也是同样的数字。请告知这是什么类型的代码?那么如何在箭头出现时准确地从Ikastom "获得 "数值呢? 尝试不通过iCustom()而是通过终端的全局变量来传递指标值。这些是你可以通过F3看到的。问题是,当它是唯一正常的数据传输方式时,这并不是一种罕见的情况。我有过这样的案例。 很可能在你的指标中,有些类型的箭头是通过指标缓冲区绘制的,而有些则是作为对象创建的。这是数据窗口 中可能没有箭头价格的唯一原因--数据从指标缓冲区输出到这个窗口。 Владимир Тезис 2011.02.02 18:38 #525 palesandr:问题。有代码int start() 如果(H==TimeHour(TimeCurrent())&& M==TimeMinute(TimeCurrent())&& S==TimeSeconds(TimeCurrent()) {+一些条件 然后订单被打开Ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,SL,TP); if (Ticket > 0) Alert ("Buy order opened " ,Ticket); return;}但如果此刻没有打勾,就不会被触发。但如果我给它更多时间思考,它可能会开出几笔订单。我应该只有一个订单,而不注意已经开出的订单。请告知该怎么做 EA代码只在新的tick到达时才会被触发。超过一个订单被打开,因为在下一个tick上,设置信号也是真的,而且没有检查订单的数量。我们需要重新计算订单。 v2812 2011.02.02 18:40 #526 drknn: 尝试不通过iCustom()来传递指标值,而是通过全局终端的变量。这些是可以通过F3查看的。问题是,当它是唯一正常的数据传输方式时,这并不是一种罕见的情况。我也有过这样的情况。 有可能在你的指标中,一些箭头类型是通过指标缓冲区绘制的,而另一些是作为对象创建的。这是数据窗口中可能没有箭头设定价格的唯一原因--数据是从指标缓冲区输出到这个窗口的。 非常感谢您!我现在将按你说的尝试一下处方。 --- 2011.02.02 18:42 #527 palesandr: 但如果这时没有打勾,就不会被触发。 如果你给它更多时间思考,它可能会开出几个订单。但我只需要一个,而且我不希望它注意到已经打开的订单。你能告诉我该怎么做吗? ? 1.全球数据时间last_dt。 2.做出正确的时间 datetime dt=StrToTime(H+": "+M+": "+S)。 3. if (TimeCurrent()>=dt && last_dt<dt) // 正确的时间已经到来,是第二天。 { // 打开订单 如果(ticket>0)last_dt=TimeCurrent(); //记住开启的时间。 } --- 2011.02.02 18:42 #528 v2812: 那么EA给出的结果如下 - ++++++++++++++ 2147483647。而向上和向下的缓冲区都是相同的数字。 2147483647是EMPTY_VALUE 常数。 palesandr 2011.02.02 18:46 #529 我明白这一点。 我需要对订单的重新计算做得更具体。也许一个例子(以代码形式)或一个链接。 我曾这样试过 if (Ticket > 0) Alert ("Opened Buy order " ,Ticket); sleep(10000) return;} 由于某些原因失败了 drknn: EA代码只在有新的tick出现时才会被触发。该订单打开了多个,因为在下一个嘀嗒声中,设置的信号也是真的,而且没有检查订单的数量。我们需要重新计算订单。 palesandr 2011.02.02 19:02 #530 我希望软件能忽略日期,只有时间是重要的。 在这种情况下,你的建议有帮助吗? sergeev: 1.全球数据时间last_dt。 2.使之成为正确的时间 datetime dt=StrToTime(H+": "+M+": "+S)。 3. if (TimeCurrent()>=dt && last_dt<dt) // 它是正确的时间,而且是第二天。 { //开放订单 如果(ticket>0)last_dt=TimeCurrent(); //记住开幕时间 } 1...464748495051525354555657585960...537 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
当我在我的EA中开出一个印刷品时,我已经注意到了这样的细微差别,即。
double Up = iCustom(NULL, 0, "best div original", "*** CCI-OnArray Settings ***", 12, 3, 5, 25, "*** Indicator Settings ***", false, false, false, 0, 1)。
打印("+++++++++++++",向上)。
专家顾问显示以下结果 - ++++++++++++++ 2147483647。我可以看到向上和向下的缓冲区的数字是一样的。请告知这是什么类型的代码?那么如何在箭头出现时准确地从Ikastom "获得 "数值呢?
我请求有识之士的帮助:请告知正确的代码,以创建一个专家顾问/工具,其算法如下。
- 开启一个方向的双重交易(手数为0.1和0.1)是在当前图表/当前时间框架中最后形成的蜡烛的低点(卖出)/高点(买入)交叉的时刻,在该蜡烛的高点/低点附近停止,在该交叉点开启交易,并在挂单的同一点放置一个方向的双重交易,如0.2和0.1。
问题。
有代码
int start()
如果(H==TimeHour(TimeCurrent())&& M==TimeMinute(TimeCurrent())&& S==TimeSeconds(TimeCurrent())
{+一些条件
然后订单被打开
Ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,SL,TP);
if (Ticket > 0)
Alert ("Buy order opened " ,Ticket);
return;}
但如果此刻没有打勾,就不会被触发。
但如果我给它更多时间思考,它可能会开出几笔订单。
我应该只有一个订单,而不注意已经开出的订单。
请告知该怎么做
当我在我的EA中开出一个印刷品时,我已经注意到了这样的细微差别,即。
double Up = iCustom(NULL, 0, "best div original", "*** CCI-OnArray Settings ***", 12, 3, 5, 25, "*** Indicator Settings ***", false, false, false, 0, 1)。
打印("+++++++++++++",向上)。
专家顾问显示以下结果 - ++++++++++++++ 2147483647。我可以看到向上和向下的缓冲区也是同样的数字。请告知这是什么类型的代码?那么如何在箭头出现时准确地从Ikastom "获得 "数值呢?
尝试不通过iCustom()而是通过终端的全局变量来传递指标值。这些是你可以通过F3看到的。问题是,当它是唯一正常的数据传输方式时,这并不是一种罕见的情况。我有过这样的案例。
很可能在你的指标中,有些类型的箭头是通过指标缓冲区绘制的,而有些则是作为对象创建的。这是数据窗口 中可能没有箭头价格的唯一原因--数据从指标缓冲区输出到这个窗口。
问题。
有代码
int start()
如果(H==TimeHour(TimeCurrent())&& M==TimeMinute(TimeCurrent())&& S==TimeSeconds(TimeCurrent())
{+一些条件
然后订单被打开
Ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,2,SL,TP);
if (Ticket > 0)
Alert ("Buy order opened " ,Ticket);
return;}
但如果此刻没有打勾,就不会被触发。
但如果我给它更多时间思考,它可能会开出几笔订单。
我应该只有一个订单,而不注意已经开出的订单。
请告知该怎么做
EA代码只在新的tick到达时才会被触发。超过一个订单被打开,因为在下一个tick上,设置信号也是真的,而且没有检查订单的数量。我们需要重新计算订单。
尝试不通过iCustom()来传递指标值,而是通过全局终端的变量。这些是可以通过F3查看的。问题是,当它是唯一正常的数据传输方式时,这并不是一种罕见的情况。我也有过这样的情况。
有可能在你的指标中,一些箭头类型是通过指标缓冲区绘制的,而另一些是作为对象创建的。这是数据窗口中可能没有箭头设定价格的唯一原因--数据是从指标缓冲区输出到这个窗口的。
非常感谢您!我现在将按你说的尝试一下处方。
但如果这时没有打勾,就不会被触发。
如果你给它更多时间思考,它可能会开出几个订单。
但我只需要一个,而且我不希望它注意到已经打开的订单。
你能告诉我该怎么做吗?
?
1.全球数据时间last_dt。
2.做出正确的时间
datetime dt=StrToTime(H+": "+M+": "+S)。
3.
if (TimeCurrent()>=dt && last_dt<dt) // 正确的时间已经到来,是第二天。
{
// 打开订单
如果(ticket>0)last_dt=TimeCurrent(); //记住开启的时间。
}
那么EA给出的结果如下 - ++++++++++++++ 2147483647。而向上和向下的缓冲区都是相同的数字。
我明白这一点。
我需要对订单的重新计算做得更具体。也许一个例子(以代码形式)或一个链接。
我曾这样试过
if (Ticket > 0)
Alert ("Opened Buy order " ,Ticket);
sleep(10000)
return;}
由于某些原因失败了
EA代码只在有新的tick出现时才会被触发。该订单打开了多个,因为在下一个嘀嗒声中,设置的信号也是真的,而且没有检查订单的数量。我们需要重新计算订单。
我希望软件能忽略日期,只有时间是重要的。
在这种情况下,你的建议有帮助吗?
1.全球数据时间last_dt。
2.使之成为正确的时间
datetime dt=StrToTime(H+": "+M+": "+S)。
3.
if (TimeCurrent()>=dt && last_dt<dt) // 它是正确的时间,而且是第二天。
{
//开放订单
如果(ticket>0)last_dt=TimeCurrent(); //记住开幕时间
}