Терминатор v2.0 - страница 36

 

Dec 21 2006 12:51 Est

Вот положение дел по состоянию на 21 декабря. Это удивительно. Создается впечатление, что я знаю, что делаю, но это не так. По крайней мере, не полностью. Я нашел линию для ограничения размера лота, о чем сообщу позже.

Я хотел бы уменьшить капитал в торговле, т.е. снять часть прибыли, кто-нибудь знает, как это сделать на демо? Я просто хочу намеренно уменьшить капитал, используемый в торговле.

Pipsqueak2

Файлы:
dec_21.jpg  135 kb
 

Dec 22 RESULTS TREMINATOR

Похоже, что эта тема очень тихая. В любом случае, вот мои результаты и комментарии.

1) Terminator не поставляется со стопами, вы должны добавить обычные стопы и трейлинг стопы.

2) Максимальный лот в программе установлен на 100, для меня это слишком много. Вы должны изменить строку в коде "if(maxLots>=100){maxLots=100;}". Замените 100 на меньшее число, например, 5.

3) Case0: кажется победителем в моем форвард-тесте на этой и прошлой неделе. Case0: это наклон MACD. Я введу фильтр, чтобы игнорировать слишком мелкие наклоны (боковые движения) и использовать наклон EMA вместо MACD, похоже, что EMA дает более ранние сигналы.

4) На предстоящей неделе я сосредоточусь на наиболее благоприятном Case0::, который, как я полагаю, будет MACD, когда я проведу анализ.

Счастливого пипсовки.

Pipsqueak2

Результаты прилагаются.

Файлы:
 
pipsqueak2:
Похоже, что эта тема очень тихая. В любом случае, вот мои результаты и комментарии.

1) Terminator не поставляется со стопами, вы должны добавить обычные стопы и трейлинг-стопы.

2) Максимальный лот в программе установлен на 100, для меня это слишком много. Вы должны изменить строку в коде "if(maxLots>=100){maxLots=100;}". Замените 100 на меньшее число, например, 5.

3) Case0: кажется победителем в моем форвард-тесте на этой и прошлой неделе. Case0: это наклон MACD. Я введу фильтр, чтобы игнорировать слишком мелкие наклоны (боковые движения) и использовать наклон EMA вместо MACD, похоже, что EMA дает более ранние сигналы.

4) На предстоящей неделе я сосредоточусь на наиболее благоприятном Case0::, который, как я полагаю, будет MACD, когда я проведу анализ.

Счастливого пипсовки.

Pipsqueak2

Результаты прилагаются.

Я все еще занимаюсь исследованиями, разработкой и тестированием лучшего способа создания более безопасного советника Terminator. Отсюда и мое отсутствие на сайте до тех пор, пока я не смогу предоставить что-то плодотворное.

Что касается строки кода, упомянутой выше, большинство, если не все брокеры, использующие metatrader, имеют лимит торговли в 100 лотов. Поэтому, если параметры Lots= и MaxTrades= таковы, что размер лота превышает 100 лотов, советник установит максимально допустимое значение в 100 лотов. Такова цель этого раздела кода.

Том

 

Тестирование терминатора

Привет tmaneval, прекрасная работа, которую вы проделали. Мой демо-счет вырос с 8k до 35k чуть меньше чем за месяц. Однако я все еще не чувствую себя комфортно с Terminator, пока он установлен со стоплоссом=0, и трейлинг стоплоссом=0.

Я вручную устанавливаю стопы, когда могу. В настройках экстренной торговли я не должен использовать стопы?

Я думал, что советник автоматически находит точки входа из 5 кейсов на последней странице. Просмотрев ваш код, я не вижу, где вычисляется "OpenOrdersBasedOn", вместо этого я вижу его как переменную. В моей копии Treminator в качестве этой переменной было "5", и все открытые позиции использовали Case5: для алгоритма. С тех пор я изменил ее на 0, 1... и так далее.

Я также планирую изменить переменную Pips на что-то вроде 200, потому что я не хочу открывать более одной позиции в одном направлении. Что вы думаете о моих результатах и настройках?

Pipsqueak2

 

Анализ

Вот результаты моего тестирования различных кейсов.

Пример 0: GBP/USD Чистая прибыль/убыток $13,217 GAIN

Случай 1: USD/JPY Чистая прибыль/потеря $827 GAIN

Пример 2: EUR/CHF Чистая прибыль/убыток $147 УБЫТОК Это был мой алгоритм nfg!

Случай 3: не тестировался

Случай 4: USD/CHF Чистая прибыль/убыток $2,271 ПРОИГРЫШ

Пример 5: EUR/USD Чистая прибыль/убыток $8 132 GAIN.

Вывод: Мой алгоритм - nfg. С большим отрывом побеждает пример 0, но его можно еще подправить, чтобы уменьшить количество отрицательных сделок.

На этой неделе я буду тестировать пример 0, но вместо наклона MACD MAIN я буду использовать наклон линейно-взвешенной MA(5) с фильтрацией, чтобы игнорировать мелкие наклоны. LWMA(5) внимательно следит за профилем цены, и если я смогу исключить торговлю в области неглубоких склонов, то плохих сделок можно будет избежать.

Pipsqueak2

 

Это реально?

Я попробовал бэктестинг с новым алгоритмом входа, и он сравнял мои 10к за один год. Затем я поменял критерий покупки на продажу и продажи на покупку. Это не имеет смысла для меня, но бэктест на GBP/USD поражает. Я разрешил использовать лоты до 100.

Смотрите результаты бэктеста ниже; они поразительны, теперь, если бы я мог повторить то же самое на форвардном демо-тесте, а затем на реальном!

Пока что я получил такие результаты на паре GBP/USD, но и на паре EURO/USD тоже неплохо. Вот мой алгоритм:

========================================================

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Case 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=1;}

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=2;}

if(myOrderType!=3){EntryStrategy="Case 0";}

return(myOrderType);

}

========================================================

Может ли кто-нибудь понять, что не так? Я хотел бы знать, потому что это выглядит абсолютно нелогично, но работает в бэктесте.

Pipsqueak2

Файлы:
backtest.htm  735 kb
backtest.gif  6 kb
 

Сравнительные результаты

Некоторых из вас могут заинтересовать мои сравнительные результаты. Все пары были протестированы в одинаковых условиях, но результаты бэктестов сильно отличаются. Это еще больше подтверждает мое утверждение о том, что советники должны быть ориентированы на конкретные пары. Я считаю пустой тратой времени попытки создать универсальный советник.

Если он существует, то пусть будет так, если нет, то я думаю, что лучше разрабатывать советников для конкретных пар, ТФ и т.д. Все мои тесты проводились на ТФ H1. Приведенные ниже результаты не абсолютны, а относительны. Исключительно хороший результат на одной паре не имеет смысла для любой другой пары.

====================================================

ТЕСТ ПАРЫ против советника TERM2.02

H1; st=35; tp=35; tr=25;maxlots100;;openpos=5; mm=1;Account=normal;etc, Starting capital=$10,000;Jan01/06-Dec 15/06

1) GBP/USD $5,940,718

2) EUR/USD 62,995

3) USD/CAD 39,689

4) EUR/AUD 36,639

5) USD/CHF 36,370

6) EUR/JPY 25,889

7) USD/JPY 24,465

8) GBP/JPY 16,716

9) GBP/CHF 16,548

A) EUR/CHF 9,516

Б) ЕВР/ГБП 8,844

C) AUD/USD 7,726

Pipsqueak2

 
pipsqueak2:
Я попробовал бэктест с новым алгоритмом входа, и он сровнял мои 10к за один год. Далее я поменял критерий покупки на продажу и продажи на покупку. Это не имеет смысла для меня, но бэктест на GBP/USD поражает. Я разрешил использовать лоты до 100.

Смотрите результаты бэктеста ниже; они потрясающие, теперь, если бы я мог повторить то же самое на форвардном демо-тесте, а затем на живом тесте!

Пока что я получил эти результаты на паре GBP/USD, но и на EURO/USD тоже неплохо. Вот мой алгоритм:

========================================================

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Case 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=1;}

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=2;}

if(myOrderType!=3){EntryStrategy="Case 0";}

return(myOrderType);

}

========================================================

Может ли кто-нибудь понять, что не так? Я хотел бы знать, потому что это выглядит совершенно нелогично, но работает в бэктесте.

Pipsqueak2

Возможно, у вас просто перепутаны типы ордеров? Попробуйте это:

int OpenOrdersBasedOnMACD()

{

int myOrderType=3;//Case 0

double a1=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,0);

double a2=iMA(NULL,0,5,0,MODE_LWMA,PRICE_OPEN,1);

if(a1>a2){myOrderType=2;}//buy

double a3=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,0);

double a4=iMA(NULL,0,5,0,MODE_LWMA,PRICE_CLOSE,1);

if(a3<a4){myOrderType=1;}//sell

if(myOrderType!=3){EntryStrategy="Case 0";}

return(myOrderType);

}

Или вышеприведенный код - это то, что привело к краху счета в бэктесте?

Том

 

fibolotsize

здравствуйте, Том, я хочу знать, возможно ли включить в скрипт терминатора

v2, прогрессию размера лота фибоначчи..... спасибо.

 
markus06160:
привет, Том, я хочу знать, возможно ли включить в скрипт терминатора v2, прогрессию размера лота по Фибоначчи..... спасибо.

Выполнено. См. пост#1 для T2.03. Также добавлен еще один триггер покупки/продажи (OpenOrdersBasedOn=6).

Изменил некоторые настройки в надежде сделать советника более безопасным - увеличил разброс пунктов.

Это не много, пока что.... но каждая мелочь помогает.

Том