新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1478 1...147114721473147414751476147714781479148014811482148314841485...1953 新评论 ANDREY 2021.05.21 08:44 #14771 MakarFX: 是 谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。 告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗? 谢谢你 Valeriy Yastremskiy 2021.05.21 08:57 #14772 ANDREY:谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗?谢谢 bool FlagNewBar=false, FlagBegin=true; void OnTick() FlagNewBar=false; if(BarTime!=Time[0]) { BarTime=Time[0]; FlagNewBar=true; } if(FlagNewBar || FlagBegin) { FlagBegin=false; ....... ) 更好的是,你在会议之外也会有一个计时器。而且只在新的蜡烛上。 但是,既然在第一个极值处放置一格挂单更容易,你为什么要这样做呢?这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。 旗子是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。 ANDREY 2021.05.21 09:30 #14773 Valeriy Yastremskiy:更好的是,你会让定时器跑出会期。但只是在新的蜡烛上。而你为什么要这样做呢?因为从第一个极值开始下一格挂单更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下, 将在30点后下单。旗帜是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。 我的订单从当地低点向上 打开30点,即出价减去最低点>=30点。 谢谢你的参与。我现在将开始深入研究你的提示.... ANDREY 2021.05.21 09:34 #14774 Valeriy Yastremskiy:更好的是,你会让定时器跑出会期。但只是在新的蜡烛上。而你为什么要这样做呢?因为从第一个极值开始下一格挂单 更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。旗帜是需要在被扔到图表上后立即锻炼的。如果我们不需要它,我们就会把旗子拿掉。 有一个当地的最低限度。我在距离当地最低点30,32,34...点的位置设置了10个挂单。然后在价格达到第一个挂单之前,本地低点被更新,我不得不再次设置所有的挂单。在我看来,设置和重设挂单需要很多时间。而我正在努力拯救它。 ANDREY 2021.05.21 09:37 #14775 Valeriy Yastremskiy:更好的是,你会让定时器 跑出会期。但只是在新的蜡烛上。而你为什么要这样做呢?因为从第一个极值开始下一格挂单更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。旗子是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。 如果我的定时器在拍打,我会很高兴。但在MT4测试器中发现,定时器并不工作。 Tretyakov Rostyslav 2021.05.21 09:41 #14776 ANDREY:谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗?谢谢你 if(TimeMinute(TimeCurrent())!=x) x=TimeMinute(TimeCurrent(); Tretyakov Rostyslav 2021.05.21 10:02 #14777 Valeriy Yastremskiy:这样做更好。 你能告诉我为什么我们需要一个 "FlagNewBar "吗? 这不是同样的事情吗? if(BarTime!=Time[0]) { ........ BarTime=Time[0]; } ANDREY 2021.05.21 10:17 #14778 MakarFX: if(TimeMinute(TimeCurrent())!=x) x=TimeMinute(TimeCurrent(); 我还是不明白,在这种情况下使用TimeSeconds()或TimeMinute() 函数是否是基本的和必须的?毕竟,你可以用一个函数得到与这些函数相同的结果--Minute() 如果(Minute()!= x){ 行动 x=Minute(); } 谢谢你。 Tretyakov Rostyslav 2021.05.21 10:22 #14779 ANDREY:我还是不明白,在这种情况下使用TimeSeconds()或TimeMinute() 函数是否是基本的和必须的?毕竟,你可以用一个函数得到与这些函数相同的结果--Minute() 如果(Minute()!= x){行动 x=Minute();}谢谢你。 这不是一个原则问题。只要是最适合你的就行 Valeriy Yastremskiy 2021.05.21 10:35 #14780 MakarFX:你能告诉我为什么需要 "FlagNewBar "吗?这不是同样的事情吗?这是BASIC的一个习惯。使用它更容易)没有它你也能做到。)而如果在几个地方插入条件,记录就会更短。 Zy。如果逻辑是分叉和滞后的,就不能没有标志。而且打印起来也很方便) 1...147114721473147414751476147714781479148014811482148314841485...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
是
谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。
告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗?
谢谢你
谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。
告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗?
谢谢
更好的是,你在会议之外也会有一个计时器。而且只在新的蜡烛上。
但是,既然在第一个极值处放置一格挂单更容易,你为什么要这样做呢?这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。
旗子是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。
更好的是,你会让定时器跑出会期。但只是在新的蜡烛上。
而你为什么要这样做呢?因为从第一个极值开始下一格挂单更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下, 将在30点后下单。
旗帜是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。
我的订单从当地低点向上 打开30点,即出价减去最低点>=30点。
谢谢你的参与。我现在将开始深入研究你的提示....
更好的是,你会让定时器跑出会期。但只是在新的蜡烛上。
而你为什么要这样做呢?因为从第一个极值开始下一格挂单 更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。
旗帜是需要在被扔到图表上后立即锻炼的。如果我们不需要它,我们就会把旗子拿掉。
有一个当地的最低限度。我在距离当地最低点30,32,34...点的位置设置了10个挂单。然后在价格达到第一个挂单之前,本地低点被更新,我不得不再次设置所有的挂单。在我看来,设置和重设挂单需要很多时间。而我正在努力拯救它。
更好的是,你会让定时器 跑出会期。但只是在新的蜡烛上。
而你为什么要这样做呢?因为从第一个极值开始下一格挂单更容易。这在本质上与你的情况相同。第一个条件是确定极值,然后,如果趋势向下,将在30点后下单。
旗子是需要在被扔到图表上后立即锻炼的。如果不需要,那就去掉标记。
如果我的定时器在拍打,我会很高兴。但在MT4测试器中发现,定时器并不工作。
谢谢你的帮助。如果我没有弄错的话,尽管void OnTick()处理每个刻度,但如果我们在里面使用TimeSeconds(),那么void OnTick()将不会处理每个刻度,而只是处理每分钟蜡烛的开始,因此会节省整个代码的运行时间。
告诉我,如果你不写TimeSeconds(),而是写条件if(Minute()!=x),最后x=Minute(),它的效果会和 TimeSeconds()一样吗?
谢谢你
这样做更好。
你能告诉我为什么我们需要一个 "FlagNewBar "吗?
这不是同样的事情吗?
MakarFX:
我还是不明白,在这种情况下使用TimeSeconds()或TimeMinute() 函数是否是基本的和必须的?毕竟,你可以用一个函数得到与这些函数相同的结果--Minute()
如果(Minute()!= x)
{
行动
x=Minute();
}
谢谢你。
我还是不明白,在这种情况下使用TimeSeconds()或TimeMinute() 函数是否是基本的和必须的?毕竟,你可以用一个函数得到与这些函数相同的结果--Minute()
如果(Minute()!= x)
{
行动
x=Minute();
}
谢谢你。
你能告诉我为什么需要 "FlagNewBar "吗?
这不是同样的事情吗?
这是BASIC的一个习惯。使用它更容易)没有它你也能做到。)而如果在几个地方插入条件,记录就会更短。
Zy。如果逻辑是分叉和滞后的,就不能没有标志。而且打印起来也很方便)