voidOnStart()
{
while(!IsStopped()) // пока скрипт не удалён с графика
{
bool is_new_tick=RefreshRates();
// если true значит пришли новые котировкиif(is_new_tick)
{
// код который необходимо выполнять при новых котировках
}
//остальной кодSleep(100);
}
}
任何任务都可以用不同的方式解决。在市场上的第六年,但从未有必要改变Magik(即使在 "绿色青春 "的日子里)。
有各种各样的事情。例如,如果职位管理需要转给另一位顾问。
有各种各样的事情。例如,如果职位管理需要转移到另一个EA。
我翻阅了帮助和搜索了网站,但没有找到任何关于如何使用MessageBox 函数的例子。请告知。
1.是否可以改变MessageBox所显示的窗口的位置?
2.我能否改变按钮的名称,例如从 "好 "和 "取消 "改为 "啊哈 "和 "不可能"?
3.MB_DEFBUTTON 标志在这个函数中的作用是什么--我们说的是哪些按钮,它的作用是什么?
美好的一天(或夜晚)。
请教一下,如果我把代码循环起来(for或while,等等),并在循环中加入获取一个指标值的代码(或一个变量中的价格),它是否会工作?
由于程序是循环的,处于循环中的变量是否会在一个新的刻度上收到其数值?
美好的一天(或夜晚)。
请教一下,如果我把代码循环起来(for或while,等等),并在循环中加入获取一个指标值的代码(或一个变量中的价格),它是否会工作?
由于程序是循环的,位于循环中的变量是否会在一个新的刻度上总是收到一个值?
在这样一个循环中,在获取Ask价格(或其他随tick而来的东西)之前,把RefreshRates()放在这个动作之前,以请求当前的Ask值,而不是开始循环的tick所带来的旧Ask值。如果你在循环内请求指标值,当前值应该是正确的。
为了100%确定,用你的循环做一个简单的专家顾问,通过Comment() 在图表上显示信息,你会立即看到循环中的数值是否正确。在这样一个循环中,在获得例如Ask价格(或其他随tick而来的东西)之前,把RefreshRates()放在这个动作之前,以请求当前的Ask值,而不是开始循环的tick中的旧Ask值。如果在循环中你要求指示器的值,应该得到正确的电流值。
为了100%确定,用循环做一个简单的专家顾问,并通过Comment()在图表上显示信息,你会立即看到在循环中获得的值是否正确。谢谢你。
因此,它将发挥作用。这很好。
顺便问一下,在一个循环中使用这种方法是正确的,还是反常的?
我注意到,由于这样的周期,MT4完全挂起。
顺便问一下,这是对周期的正确做法还是有点反常?
我注意到,由于这个周期,MT4完全挂掉了。
也有热爱变态的人。我是说循环。
谢谢你。
所以会有效果。这很好。
顺便问一下,这种处理周期的方法是正确的还是有点反常?
我注意到,这个循环导致MT4完全冻结。
从参考资料来看,"每个脚本和每个专家都在自己的独立线程中工作。"
"一个循环的脚本或专家顾问不能干扰其他程序的工作"。
即可以采用循环的方式。
我正在使用一个脚本和这样一个模板来完成这些任务。