Автор |
Сообщение |
Liker777
Зарегистрирован: 28.06.2012
Сообщения: 120
|
Задача в том, чтобы остановить выполнение кода на данном баре и переходить к следующему бару.
Судя по справке, Break только для циклов служит, а не для кода целиком.. |
_________________ www.oleg-churyumov.blogspot.com |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Хм. AFL код не работает с отдельными барами. Он обрабатывает сразу весь массив. Отдельно с барами он работает только в случае цикла. Но в случае цикла не вижу проблем перейти к следующему бару. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Liker777
Зарегистрирован: 28.06.2012
Сообщения: 120
|
000 писал(а): |
Хм. AFL код не работает с отдельными барами. Он обрабатывает сразу весь массив. Отдельно с барами он работает только в случае цикла. Но в случае цикла не вижу проблем перейти к следующему бару. |
Ну я имел ввиду следующее. Допустим идет real time trading.
Могу ошибаться, но я думал, что код написанной мной формулы выполняется с приходом каждого нового бара. Торгуем на минутках - он выполняется раз в минуту.
Так вот, когда придет очередная минута-котировка, формула начнет выполняться, и я хочу прервать ее на середине. И все, больше выполняться не будет, пока следующая минута-котировка не придет. |
_________________ www.oleg-churyumov.blogspot.com |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Понятно. По моему нельзя. Как только изменяется массив данных Ами по любому запускает перерасчет индикаторов и способы остановить такое поведение я не знаю.
В принципе можно сделать проверку в коде по времени и если, например текущие секунды меньше 30, то не расчитывать ничего. Только тогда пол минуты на чарте ничего на будет. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Liker777
Зарегистрирован: 28.06.2012
Сообщения: 120
|
000 писал(а): |
Понятно. По моему нельзя. Как только изменяется массив данных Ами по любому запускает перерасчет индикаторов и способы остановить такое поведение я не знаю.
В принципе можно сделать проверку в коде по времени и если, например текущие секунды меньше 30, то не расчитывать ничего. Только тогда пол минуты на чарте ничего на будет. |
Не совсем понял про секунды )
Goto оператора тоже нету в AFL, с ним можно бы было решить )
В принципе конечно можно еще задачу решить с помощью кучи IFов но это усложнит код )) |
_________________ www.oleg-churyumov.blogspot.com |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Посмотри код индикатора...
Код: |
if(frac(Now( 4 )/100)*100 > 30)
Plot(MA(C, 12), "", colorRed);
else
Plot(MA(C, 24), "", colorBlue);
Plot(C, "", colorBlack, styleCandle);
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Liker777
Зарегистрирован: 28.06.2012
Сообщения: 120
|
000 писал(а): |
Посмотри код индикатора...
Код: |
if(frac(Now( 4 )/100)*100 > 30)
Plot(MA(C, 12), "", colorRed);
else
Plot(MA(C, 24), "", colorBlue);
Plot(C, "", colorBlack, styleCandle);
|
|
а ну в общем через if все решается ) |
_________________ www.oleg-churyumov.blogspot.com |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|