[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 469

 
chief2000 >>:

Идея простая - каждый раз когда выполняется условие

время для High[i+2] сохраняется в переменную Time_Extreme_Sell.

Затем, в каждом(!) подобном случае, на расстоянии до 10 свечек после свечки со временем Time_Extreme_Sell необходимо нарисовать вертикальные линии.

Но я вижу что эти линии рисуются только в самом конце, для Time[0] и только если от Time[0] до Time_Extreme_Sell меньше 10 свечек.





Проверяй условия не новичек же ))) но ленивый =)) поэтапно проверяй!


условия не выполняются!


 
costy_ >>:

Проверяй условия не новичек же ))) но ленивый =)) поэтапно проверяй!


условия не выполняются!



Сидит чукча, рыбачит. Подплывает американская подводная лодка выходит капитан и спрашивает:
- Heloo! Куда поплыл русский подлодка?
Чукча указал куда-то вбок.
- Nort-West! - Скомандовал капитан и подлодка уплыла.
Тут же выныривает русская подлодка из неё выходит капитан:
- Куда американская подлодка поплыла?
Чукча:
- Норт вест.
- Не умничай, пальцем покажи!

:)

 
costy_ писал(а) >>

Наверное это на М1 не работаю.

Здесь все нормально. В самом окне прокрутка в прошлое на любом таймфрейме идет согласно этому параметру. В тестере этого у меня нет. Убеждался на програмном уровне и визуально, например, тестирую любой эксперт с визуализацией на любом таймфрейме - нет прокрутки назад (точнее она есть, но на небольшое количество баров назад).

Вопрос остается -

Тестер не видит истории? Что делать?

У меня тестер не видит закачанной истории, на самом графике всё видно на много лет назад (в опциях все проставлено). Если посмотреть, например, на 1000 баров назад в тестере (когда запускаю тестирование эксперта), то пусто. Терминал - Альпари-Демо.

Знаю извращенной способ, поставить дату тестирования намного раньше, а в самом эксперте производить тестирование с нужной даты. Что делаю не так?

 
sak120 писал(а) >>

Здесь все нормально. В самом окне прокрутка в прошлое на любом таймфрейме идет согласно этому параметру. В тестере этого у меня нет. Убеждался на програмном уровне и визуально, например, тестирую любой эксперт с визуализацией на любом таймфрейме - нет прокрутки назад (точнее она есть, но на небольшое количество баров назад).

Вопрос остается -

Тестер не видит истории? Что делать?

У меня тестер не видит закачанной истории, на самом графике всё видно на много лет назад (в опциях все проставлено). Если посмотреть, например, на 1000 баров назад в тестере (когда запускаю тестирование эксперта), то пусто. Терминал - Альпари-Демо.

Знаю извращенной способ, поставить дату тестирования намного раньше, а в самом эксперте производить тестирование с нужной даты. Что делаю не так?

В тестере доступна ограниченная история в 1000 баров

 
Vinin писал(а) >>

В тестере доступна ограниченная история в 1000 баров

Большое спасибо.

 
Господа програмисты!!! Объясните, пожалуста, мне бестолковому, почему исполняется тело оператора else, если if (условие) истинно? Весь мозг себе уже разрушил...
if (PRICEASK==OrderOpenPrice())                   // Если цена PRICEASK равна цене открытия выбранного ордера...
   {KRYTASK=false;}                               // ...значит, ордер уже выставлен. Критерий для открытия - ЛОЖЬ.
   else
   {KRYTASK=true;}                                // ...значит, ордер еще не выставлен. Критерий для открытия - ИСТИНА.
По поводу плавающей запятой. Решил проверить эти цены. Добавил функцию Print(), чтобы посмотреть на них. Потом добавил в функцию и такой код:
Print (NormalizeDouble(PRICEASK,Digits))
А потом еще и такой:
string value=DoubleToStr(PRICEASK,Digits);string value1=DoubleToStr(OrderOpenPrice(),Digits);
Print ( value," ",  value1);
Вобщем крутил-вертел по-всякому, чтобы понять и увидеть где ошибка. Как ни крути - цены всё-равно равны друг другу. Но не смотря на это все-равно исполняется {KRYTASK=true}.
Такая вот шляпа... Благодарю заранее!
 
Джентльмены, вопрос такой:

В тестере вот такая штука:
nMAValue = iMA (Symbol (), PERIOD_H1, 100, 0, MODE_SMA, PRICE_MEDIAN, 0); 
Print ("MA value: ", DoubleToStr (nMAValue, 4));

в журнале выдает "0.0000".

А в терминале в реал-тайме выдает правильные значения.

Как с этим бороться?
 
iliaalyoshin писал(а) >>
Господа програмисты!!! Объясните, пожалуста, мне бестолковому, почему исполняется тело оператора else, если if (условие) истинно? Весь мозг себе уже разрушил...По поводу плавающей запятой. Решил проверить эти цены. Добавил функцию Print(), чтобы посмотреть на них. Потом добавил в функцию и такой код:
А потом еще и такой:Вобщем крутил-вертел по-всякому, чтобы понять и увидеть где ошибка. Как ни крути - цены всё-равно равны друг другу. Но не смотря на это все-равно исполняется {KRYTASK=true}.
Такая вот шляпа... Благодарю заранее!


Цены не равны друг другу. Для сравнения действительных числе (на равенство) можно использовать разные приемы. Но напрямую нельзя.

 
Vinin >>:


Цены не равны друг другу. Для сравнения действительных числе (на равенство) можно использовать разные приемы. Но напрямую нельзя.


Разные приёмы? Какие, например?
 
iliaalyoshin писал(а) >>


Разные приёмы? Какие, например?


https://www.mql5.com/ru/articles/1561