Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
вы зачем то голову себе ломаете на ровном месте.
зачем вам знать чему он конкретно равен ?
для вас главное его проверить - на расстояние до стопа от цена. и ВСЁ! конкретный цифирь вам и даром не нужен. также как и стопуровень.
......
скажите, а как вы в эксперте узнаете значение фриза ?
Прошу простить, ну совершенно не на ровном. Тут как у Козьмы Пруткова:"Если на клетке с тигром ты увидел надпись мышь - не верь глазам своим".
А если конкретно, то на моих ДЦ FreezeLevel {== MarketInfo(Symbol(), MODE_FREEZELEVEL) } всегда равен нулю. И тогда "полоса FreezeLevel" - для советника, написанного на основе нулевого значения сжимается в точку значения цены, что не соответсвует реальной действительности (на тех же самых ДЦ).
Так что проблема есть.
А если конкретно, то на моих ДЦ FreezeLevel {== MarketInfo(Symbol(), MODE_FREEZELEVEL) } всегда равен нулю. И тогда "полоса FreezeLevel" - для советника, написанного на основе нулевого значения сжимается в точку значения цены, что не соответсвует реальной действительности (на тех же самых ДЦ).
Так что проблема есть.
проблемы нет.
если вы получаете фриз как написали, и затем проверяете расстояния при попытке модификации, то проблемы нет.
разве у вас и после проверки генерируется ошибка фриза ?
проблемы нет.
если вы получаете фриз как написали, и затем проверяете расстояния при попытке модификации, то проблемы нет.
разве у вас и после проверки генерируется ошибка фриза ?
В том то и дело. Поэтому и полез его копать и вывод наладил через Comment(),а в init() вставил
FreezeL = MarketInfo(Symbol(), MODE_FREEZELEVEL) ;
а в start()
if (FreezeL != MarketInfo(Symbol(), MODE_FREEZELEVEL) )
{
Alert (FreezeL, "<>", MarketInfo(Symbol(), MODE_FREEZELEVEL) );
}
---
И тишина....
В том то и дело.
..
И тишина....
В том то и дело. Поэтому и полез его копать и вывод наладил через Comment(),а в init() вставил
FreezeL = MarketInfo(Symbol(), MODE_FREEZELEVEL) ;
а в start()
if (FreezeL != MarketInfo(Symbol(), MODE_FREEZELEVEL) )
{
Alert (FreezeL, "<>", MarketInfo(Symbol(), MODE_FREEZELEVEL) );
}
---
И тишина....
Ну и верно. И будет молчание. Что вложили в код, то и получаете. Смотрите, схематически это можно отобразить так:
FreezeL=Формула1
if(FreezeL !=Формула1), то выбросить окно с алертом
Но поскольку формула 1 всегда возвращает одно и то же значение, то FreezeL всегда равен этому значению и поэтому алерт не выбрасывается на экран. Так в чём же проблема-то?
В том то и дело. Поэтому и полез его копать и вывод наладил через Comment(),а в init() вставил
какой номер ошибки при модификации появляется?
Ну и верно. И будет молчание. Что вложили в код, то и получаете. Смотрите, схематически это можно отобразить так:
FreezeL=Формула1
if(FreezeL !=Формула1), то выбросить окно с алертом
Но поскольку формула 1 всегда возвращает одно и то же значение, то FreezeL всегда равен этому значению и поэтому алерт не выбрасывается на экран. Так в чём же проблема-то?
Если с течением времени уровень изменили не в нашу пользу ( я понимаю, что вы с этим, как и с олдтиком не встречались в бою :) - то логично завопить.
код пугает - но вопрос остался...
;)
Ну и верно. И будет молчание. Что вложили в код, то и получаете. Смотрите, схематически это можно отобразить так:
FreezeL=Формула1
if(FreezeL !=Формула1), то выбросить окно с алертом
Но поскольку формула 1 всегда возвращает одно и то же значение, то FreezeL всегда равен этому значению и поэтому алерт не выбрасывается на экран. Так в чём же проблема-то?
Там первый уровень рассчитывается в ините эксперта, а сравнение происходит уже в старте. Т.е., допустим, эксперт закинут на график - фриз левел раз в ините посчитали, далее в старте, уже на каждом тике в течение времени происходит расчет и сравнение текущего и ранее посчитанного уровней - если они не равны - то алерт бросаем на график - так, что у топикстартера здесь все верно.
В том то и дело. Поэтому и полез его копать и вывод наладил через Comment(),а в init() вставил
FreezeL = MarketInfo(Symbol(), MODE_FREEZELEVEL) ;
а в start()
if (FreezeL != MarketInfo(Symbol(), MODE_FREEZELEVEL) )
{
Alert (FreezeL, "<>", MarketInfo(Symbol(), MODE_FREEZELEVEL) );
}
---
И тишина....
Все верно - она и должна быть тишина, ведь стоп-левел не меняется с течением времени у Ваших ДЦ... :-)))
Вы не находите, что в Вашем ответе содержится легкое пртиворечие. На мой взгляд " в динамике запрашивать перед каждой операцией" значение равное нулю смысла не имеет ("в некоторых ДЦ так же даже во время новостей он = 0").
Судя по тем двум ДЦ, на которых я в настоящий момент пасусь, там он равен нулю на постоянной основе. А объективно явление в виде "полосы FreezeLevel" существует, и не вредно его учесть при написании советника (и хотелось бы "инвариантно" к ДЦ).
нет не нахожу, жизнь очень разнообразна. Нет никакого противоречия
во время новостей этот параметр может быть = 0 а может быть не равен... в режиме покоя этот параметр может быть = 0
а может и не равен - какой дилинг как настроит свои сервера, так и будет
сие неизвестно когда как и почему - вопрос к дилингам. А они скорее всего на этот вопрос Вам не ответят.
каждый дилинг сам решает когда и как и на сколько менять этот параметр
я на практике не раз набллюдал как параметр плавает у разных дилингов по разному, и есть такие у которых не наблюдается в то время у другого наблюдается
и от чего это зависит неизвестно.
поскольку эксперт, грамотно написанный, должен работать в любом дилинге, то грамотно будет этот параметр обрабатывать в любом случае!
не зависимо от того = 0 он в вашем дилинге или не равен <> 0
сейчас он =0 а завтра возьмут и начнут менять в зависимости от своих внутренних соображений
Вы посмотрите на FrezeLevel в динамике особенно при выходе новостей а не тогда когда на рынке штиль
когда на рынке штиль, то и в ДЦ о котором я говорил он тоже = 0
но как только начинаются новости этот параметр могут включать!
а могут и не включать, критерий его включения определяет ДЦ по своим умозаключениям.