Спасибо. То есть надо сделать в начале функции start() некий диспетчер условий, которые определяют вызов соответствующих ситуации функций, каждая из которые возвращают управление терминалу и дальше по получению нового тика этот диспетчер снова отрабатывает? Мдаа... придется полностью переделывать логику программы...
То есть тест не проходит, потому что тестер зависает в ожидании нового тика? А в реалтайме работать будет? Гм... все-таки возможностьоттестировать на истории это важно. Буду думать. Спасибо.
Подскажите пожалуйчта, как написать простой индикатор, который бы выделял определенный бар (должно задаваться в опциях), например в 12.30 вертикальной линией и подписать дни недели на графике (скажем где-то над хаем каждого дня)?
В реалтайме работать должно, эксперт выполняется отдельным потоком и может думать сколько ему взблагорассудится, а RefreshRates позволяет получать доступ к актуальным котировкам.
Michey25
когда я отвечал код был несколько другим;)
хотя есть некоторые вопросы, результат опен(0) сильно зависит от текущего тайфрейма. непонятно откуда берутся cn и какого они типа.
Сделать Alert(Open[0],cn1,Open[0]<cn1,a,(a-cn1)<0.0008) религия не позволяет?
До кучи вместо i=1 лучше юзать break, это сделает выход из цикла сразу, а не будет прогонять все команды до конца.
cn, sl, cn2...所有这些都是双倍的,都是输入参数,我在将EA附加到图表上时输入这些参数。警报与此有什么关系?
В чем тут может быть причина, пож. подскажите ?
for(k = 0; k< iBars( Symbol_1,Period()); k++)
它在所有的条形图上运行一个循环,然后又有一个嵌入的循环,在第一次调用中,所有的条形图都被考虑在内,因为极限值又等于窗口中的条形图数量。我们通过条数的平方得到周期,对于这样一个简单的任务来说,这有点多余了。cn, sl, cn2... все типа double и являются входными параметрами, я их ввожу когда прикрепляю советник к графику. И причем здесь Alert?
你可以用警报来显示变量值和条件的结果,在每个条件之前添加一个if,然后看到结果。这是调试程序的常用方法,这样你就不必猜测和搜索。
谢谢你。所以在start()函数的开始,我必须做一些条件管理器,它定义了返回控制权给终端 的函数的调用,然后,当收到一个新的tick时,这个管理器将再次工作?嗯...我将不得不完全重新制定程序逻辑...
那么,测试失败是因为测试人员挂起了等待新的刻度线?它能实时工作吗?嗯...能够在历史上进行测试是很重要的。我将考虑一下。谢谢你。
Спасибо. То есть надо сделать в начале функции start() некий диспетчер условий, которые определяют вызов соответствующих ситуации функций, каждая из которые возвращают управление терминалу и дальше по получению нового тика этот диспетчер снова отрабатывает? Мдаа... придется полностью переделывать логику программы...
То есть тест не проходит, потому что тестер зависает в ожидании нового тика? А в реалтайме работать будет? Гм... все-таки возможностьоттестировать на истории это важно. Буду думать. Спасибо.
它应该是实时工作的,专家顾问在一个单独的线程中运行,可以随意思考,而RefreshRates允许访问当前的报价。
Добрый день!
Подскажите пожалуйчта, как написать простой индикатор, который бы выделял определенный бар (должно задаваться в опциях), например в 12.30 вертикальной линией и подписать дни недели на графике (скажем где-то над хаем каждого дня)?
Спасибо!
采取https://www.mql5.com/ru/articles/1382,并归档
В реалтайме работать должно, эксперт выполняется отдельным потоком и может думать сколько ему взблагорассудится, а RefreshRates позволяет получать доступ к актуальным котировкам.
谢谢你。我目前正在重新修改程序逻辑,使其没有循环。还有一个问题不是很清楚。
Sleep(100);
是以秒为单位的多长时间?
而且它可以在任何地方使用,而不仅仅是在循环中?
这样,当一个条件被满足时,你不会立即做出反应,而是等待一个设定的时间并再次检查,然后再执行。
而且它不会把测试者吊死吗?
ntmmm писал(а) >>
...你能告诉我如何写一个简单的指标,以突出某一个柱子(应该在选项中设置),例如在12.30用一条垂直线,并在图表上标明一周的日子(例如在每一天的亥时上方的某个地方)?
iTime指标集
Это сколько по времени в секундах?
И может ли использоваться не только в циклах, а в любом месте?
Чтобы при выполнении условия не сразу реагировать, а подождать заданное время и снова проверить, а потом уже выполнять.
И не повесит ли это тестер?
1. 0.1(零点十分之一)。
2.可以在任何地方
3.不会自己悬挂,但如果你下定决心......:)
谢谢你!