[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 193

 
Andrey067:

Всем доброго дня!

Вопрос про советник. Проссматривая множество советников, хочу понять - как автоматически производятся сделки. Вроде всё настраиваю правильно, разрешаю советнику торговать, понимаю идею - но сделок почему-то нет. Может он применяется к какому-то конкретному инструменту? Или таймфрейму? Как это можно узнать?..


По умолчанию к текущему инструменту и работает на текущем таймфрейме, если не задано в параметрах другого (если конечно эти параметры используются)
 
tara:

1. Пропускать часть баров будет, поскольку результат сравнения double==int зависит от конкретного значения int, которое было ранее помещено в double. Здесь именно так и происходит: время (int) пишем в double - для всех чисел, не являющимися степенью двойки происходит потеря точности, в результате которой double3 != int3, хотя double4 == int4.

2. Я понимаю, что это - всего лишь чья-то техническая ошибка, многократно затем растиражированная. На самом деле, надо просто исправить тип OpenBar на double. Но - сон разума порождает чудовищ: проще просто повторить чужой код и зажмуриться :)

3. Решение некорректно с точки зрения распределения памяти: здесь достаточно локальной переменной static, лишняя глобальная переменная ни к чему - программный мусор, хотя это и мелочь :(

Странно, но у Меня ничего не пропускает. Думаю, лог не нужно приводить? PERIOD_H1, цифорки в "журнале" бегают от 0 до 23, иногда до 22.

Видимо всё дело в процедуре привидения типов.

Зря Вы так. А про память согласен, более грамотно (static + int).

 
Vinin:

По умолчанию к текущему инструменту и работает на текущем таймфрейме, если не задано в параметрах другого (если конечно эти параметры используются)

Обычный советник - две скользящие средние с периодами 4 и 12. Сигналы - их пеерсечение. На пятиминутке в течение дня было несколько таких сигналов, но сделок нет. Такая же ситуация и по другим советникам. Или они работают только на реальном счёте, а я подключаю к демо???
 
Andrey067:

Обычный советник - две скользящие средние с периодами 4 и 12. Сигналы - их пеерсечение. На пятиминутке в течение дня было несколько таких сигналов, но сделок нет. Такая же ситуация и по другим советникам. Или они работают только на реальном счёте, а я подключаю к демо???

Ошибка только в логике. Не имеет значения Реал или Демо, но попытки открытия должны быть. Если в логах пусто - ищите ошибку в советнике.
 
Vinin:

Осталось привести код. Мне уже просто надоело одно и то же через пять страниц повторять. Тем более что правильное решение легко найти через поиск


Код из учебника приведен во втором посте на предыдущей странице. Предметом же обсуждения было соответствие, либо несоответствие (функциональное) оному коду предложенного на предыдущей странице "упрощенного" варианта. Приговор: не соответствует.

зы В моем предыдущем посте была ошибка (механическая) - в п.2 вместо "double" должно быть "datetime или int". Исправил.

 
tara:

Код из учебника приведен во втором посте на этой странице. Предметом же обсуждения было соответствие, либо несоответствие (функциональное) оному коду предложенного на предыдущей странице "упрощенного" варианта. Приговор: не соответствует.

Никогда не пользуюсь чужими кодами (хотя раньше было), стараюсь использовать только то что понимаю.

Жду Вашего варианта (не из учебника)

 

Ребята не подскажете. Тестирую трендовую ТС на ММ по мартину, указываю в индюках явный период, т.е. например, минимальный период на вход в рынок по пробою фрактала

// определение входа в рынок по пробою фрaктала        
      F1=iFractals(Symbol(), signal_period, MODE_UPPER, 2); 
        if (F1>0) F11 = F1; //Print (" F11 = ",   F11);}   
            
             
      F2=iFractals(Symbol(), signal_period, MODE_LOWER, 2); 
        if (F2>0) F22 = F2; // Print (" F22 = ",   F22);}
       

При этом signal_period =

PERIOD_M30 30 30 минут
это мин значение. На вход в рынок получаю сигналы по разным индюкам с разными периодами - это минимальный.

Далее заряжаю в тестере стратегий терминала скачанного с данного ДЦ с его историей котировок, в итоге получаются различные результаты теста при тестировании на периоде М30 или на меньшем - допустим, М15 или М1... Как такое возможно??? Советник с контролем открытия нового бара и тестируется по ценам открытия... Подскажите, кто знает или сталкивался с подобным...

 
Roman.:

Ребята не подскажете. Тестирую трендовую ТС на ММ по мартину, указываю в индюках явный период, т.е. например, минимальный период на вход в рынок по пробою фрактала

При этом signal_period =

PERIOD_M30 30 30 минут
это мин значение. На вход в рынок получаю сигналы по разным индюкам с разными периодами - это минимальный.

Далее заряжаю в тестере стратегий терминала скачанного с данного ДЦ с его историей котировок, в итоге получаются различные результаты теста при тестировании на периоде М30 или на меньшем - допустим, М15 или М1... Как такое возможно??? Советник с контролем открытия нового бара и тестируется по ценам открытия... Подскажите, кто знает или сталкивался с подобным...


На втором баре фрактал может и перерисоваться. Надо на третьем проверять
 
Vinin:

На втором баре фрактал может и перерисоваться. Надо на третьем проверять

Ммм... Интересно. Виктор, благодарю Вас. Проверю.
 
Roman.:

Ммм... Интересно. Виктор, благодарю Вас. Проверю.

Лишь бы ТС выдержала
Причина обращения: