[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 55
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
if((b_mod) && (priceB > Ask)) OrderModify(b_ticket,priceB,priceS,0,0,Brown);
if((s_mod) && (priceS < Bid)) OrderModify(s_ticket,priceS,priceB,0,0,Brown);
Здесь надо учитывать стоплевел MarketInfo(Symbol(),MODE_STOPLEVEL) т.е.
priceB >= Ask+ MarketInfo(Symbol(),MODE_STOPLEVEL)*Point
priceS < =Bid- MarketInfo(Symbol(),MODE_STOPLEVEL)*Point
Нет. Этот вопрос выше уже решили. Просто функция при тесте на каждом тике работала, и новая цена не получалась так быстро. Вот когда цена не менялась, то ошибка выскакивала.
Ну так если в функцию типа double или int передать элементы, то она тоже может проделать те же операции, тока уже без извращений. Зачем усложнять жизнь?
Если у функции есть тип, то подразумевается, что функция возвращает значение этого типа.
Ваша же функция не возвращает ничего.
Нет. Этот вопрос выше уже решили. Просто функция при тесте на каждом тике работала, и новая цена не получалась так быстро. Вот когда цена не менялась, то ошибка выскакивала.
Что значит нет? если условие
priceB >= Ask+ MarketInfo(Symbol(),MODE_STOPLEVEL)*Point
не будет выполнено, а priceB >Ask (как в коде)
получите ошибку.
Для того чтобы не модифицировать ордер, когда цена не успела измениться надо вводить условие priceB!=OrderOpenPrice()
Я бы написал Hour()>=18, а минуты вообще выбросил.
подскажите пожалуйста, можно ли написать индикатор в котором линии будут рисоваться в одном таймфрйме, а данные для его прорисовки будут браться с другого таймфрейма? цель: визуализировать перерисовку последнего бара. как это сделать?
Элементарно Ватсон... В каждом случае вместо Period() используйте скажем PERIOD_M15 (тот таймфрейм откуда хотите взять данные)... А сам индикатор ставите на текущий график. Т.е. принудительно укажите тот период откуда берете данные.
Элементарно Ватсон... В каждом случае вместо Period() используйте скажем PERIOD_M15 (тот таймфрейм откуда хотите взять данные)... А сам индикатор ставите на текущий график. Т.е. принудительно укажите тот период откуда берете данные.
это было бы просто, если бы я писал советник.
но тут индикатор. я их раньше еще не писал.
рассмотрел для примера стандартный стохастик. Почитал УЧЕБНИК по индикаторам.
ни там, ни там нет ни единого слова о периодах. видимо подразумевается что бары считаются того ТФ на который этот индикатор брошен.
отсюда и возник мой вопрос....
это было бы просто, если бы я писал советник.
но тут индикатор. я их раньше еще не писал.
рассмотрел для примера стандартный стохастик. Почитал УЧЕБНИК по индикаторам.
ни там, ни там нет ни единого слова о периодах. видимо подразумевается что бары считаются того ТФ на который этот индикатор брошен.
отсюда и возник мой вопрос....
В стандартном стохастике:
double iStochastic( string symbol, int timeframe, int %Kperiod, int %Dperiod, int slowing, int method, int price_field, int mode, int shift)
Если пишите свой уникальный индикатор вместо Bars используйте int iBars( string symbol, int timeframe)
https://docs.mql4.com/ru/series/iBars
В стандартном стохастике:
double iStochastic( string symbol, int timeframe, int %Kperiod, int %Dperiod, int slowing, int method, int price_field, int mode, int shift)
Если пишите свой уникальный индикатор вместо Bars используйте int iBars( string symbol, int timeframe)
https://docs.mql4.com/ru/series/iBars
казалось проблема легко решена.
заменил все Bars на iBars (через int iB; iB=iBars("EUROUSD",PERIOD_M5);) ошибок нет.
но и графика нет. появляется пустое окно.
явно чего-то не хватает.
А вообще может ли индикатор на одном баре нарисовать 12 линий? ибо в 1 часу 12 пятиминуток и каждая нарисует свою линию.
казалось проблема легко решена.
заменил все Bars на iBars (через int iB; iB=iBars("EUROUSD",PERIOD_M5);) ошибок нет.
но и графика нет. появляется пустое окно.
явно чего-то не хватает.
А вообще может ли индикатор на одном баре нарисовать 12 линий? ибо в 1 часу 12 пятиминуток и каждая нарисует свою линию.
Тоже самое относится и Close - iClose, Open - iOpen, Time - iTime Volume - iVolume и т.д.
А индикатор может рисовать до 8 линий от 0 до 7 https://docs.mql4.com/ru/customind/indicatorbuffers