Похоже намечается ещё один экспериментик...
Ребёнок летом заработал немного денег и решил преумножить этот капитал на форексе. Дочка даже дала добро на мониторинг своего счёта, так, что как запущу выложу тут ссылку.
Задачка конечно была довольно проблематичная ведь депозит получался всего около 30 долларов. Решил деньги завести на ЦентЛайт счёт в ФоЮ.
Сегодня занимались подбором параметров. Настройку делали НЕ тупо оптимизацию, а пробывали вначале логически (теоретически) выбрать необходимые параметры.
Интересный вариант получился при настройке функции трала/безубытка. Посмотрели результаты реальной торговли и отчёты из тестера, везде поведение трала одинаково - до второго уровня мы никогда не добирались. Также первый уровень зачастую закрываляся с "недоприбылью".
Поэтому идея была такова - второй уровень делать НЕ далеко от первого и немножко "схитрить" с дистанцией трала. На первом уровне бистанция трала будет бОльшей, а на втором уровне дистанция серьёзно уменьшится.
Остановились пока на таком варианте:
PHP:
extern string block_04 = " блок настройки БЕЗУБЫТКА ";
extern bool tst_mod = false; // Включение режиме тестера
extern bool convoy = true; // Включение функции трала
extern bool dun_Perc = true; // Динамический расчёт дистанции трала
extern bool brk_prs = true; // Считаем дистанцию трала от текущей цены
extern bool brk_opn = false; // Считаем дистанцию трала от цены открытия
extern int iTic_step = 1; // Шаг работы функции трала
extern int iLevel_0 = 40; // Уровень профита (пунктов), для ПЕРВОГО безубытка
extern int iPerc_0 = 90; // Трал(процентов), для ПЕРВОГО безубытка
extern int iLevel_1 = 60; // Уровень профита (пунктов), для ВТОРОГО безубытка
extern int iPerc_1 = 10; // Трал(процентов), для ВТОРОГО безубытка
Так же что бы уменьшить нагрузку на небольшой депозит, расширили канал в функции плотности ордеров. В остальном особых изменений в настройках не делали.
Если интересно или кто-то решит переделать эти настройки под 444 версию, ниже полный список.
PHP:
extern string block_01 = " блок ОСНОВНЫХ настроек ";
extern int kGMT = 0;
extern int SL = 490;
extern int TP = 145;
extern double lot = 0.05; // Объем ордера основного и степового ордера
//******************************************************************
extern bool frst_aver = true; // Включение усреднения первого порядка
extern int frst_elrg = 5; // Кратность объема усредняющего ордера первого порядка
extern int frst_level = 125; // Уровень усредняющего ордера первого порядка
extern int frst_zone = 7; // Приращение для включения усреднения первого порядка
extern bool scnd_aver = true; // Включение усреднения второго порядка
extern bool full_scnd = true; // Полное усреднение второго уровня
extern int scnd_elrg = 5; // Кратность объема усредняющего ордера второго порядка
extern int scnd_level = 115; // Уровень усредняющего ордера второго порядка
extern int scnd_zone = 13; // Приращение для включения усреднения второго порядка
//******************************************************************
//extern string block_02 = " управление капиталом ";
extern bool eq_mm = true; // Включение функции управления капиталом по эквити
extern double DP = 3200.0; // Задаётся стартовый размер депозита
extern int step_eq = 50; // Шаг приращения эквити в процентах
extern double step_vol = 0.02; // Увеличение объёма ордера при каждом шаге приращения эквити
extern bool na_mm = false; // Включение функции управления капиталом по текущей просадке
extern int step_na = 0; // Текущая просадка в процентах
extern double step_vna = 0.0; // Увеличение объёма ордера при каждом шаге изменения просадки
extern string block_03 = " разовое приближение ";
extern bool one_step = true; // Включение функции разового приближения
extern bool del_old = true; // Удалять "старый" ордер
extern int step_k = 2; // Кратность дистанции приближения
extern string block_04 = " блок настройки БЕЗУБЫТКА ";
extern bool tst_mod = false; // Включение режиме тестера
extern bool convoy = true; // Включение функции трала
extern bool dun_Perc = true; // Динамический расчёт дистанции трала
extern bool brk_prs = true; // Считаем дистанцию трала от текущей цены
extern bool brk_opn = false; // Считаем дистанцию трала от цены открытия
extern int iTic_step = 1; // Шаг работы функции трала
extern int iLevel_0 = 40; // Уровень профита (пунктов), для ПЕРВОГО безубытка
extern int iPerc_0 = 90; // Трал(процентов), для ПЕРВОГО безубытка
extern int iLevel_1 = 60; // Уровень профита (пунктов), для ВТОРОГО безубытка
extern int iPerc_1 = 10; // Трал(процентов), для ВТОРОГО безубытка
extern string block_05 = " ****** ЗОНА ФИЛЬТРОВ ****** ";
extern string block_06 = " ****** ************* ****** ";
extern bool chenal_filter = true; // Фильтр проверки наличия соседних ордеров
extern int chenal_pip = 24; // Ширина канала для проверки соседних ордеров
extern int chenal_ord = 1; // Допустимый колличество соседних ордеров
extern string block_07 = " ****** ************* ****** ";
extern bool order_filter = false; // Фильтр разрешённого колличества ордеров
extern int max_oB = 0; // Разрешённое колличество "длинных" ордеров
extern int max_oS = 0; // Разрешённое колличество "коротких" ордеров
extern string block_08 = " ****** ************* ****** ";
extern bool ever_filter = false; // Фильтр разрешённого колличества усреднений
extern int max_ever_1 = 0; // Разрешено усреднений первого уровня
extern int max_ever_2 = 0; // Разрешено усреднений второго уровня
extern string block_09 = " ****** ************* ****** ";
extern bool al_sig = true; // Разрешён аллерт сигнал при срабатывании фильтра
extern bool noise = false; // Разрешён звуковой сигнал
Для проверки теории было решено "прогнать" советника в тестере...
Сделал тест за текущий год, результаты впринципе получились нормальными, потом решил попробывать прогнать за несколько лет с этими настройками - все результаты прикрепил ниже...