Здравствуйте, гость ( Вход | Регистрация )

17 страниц V < 1 2 3 4 > »   
Ответить в эту темуОткрыть новую тему
> Автоматические торговые системы, Идеи, эксперименты...
leonid553
сообщение 29.5.2007, 11:28
Сообщение #11





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Символ GBPUSD (Great British Pound vs US Dollar)
Период 4 Часа (H4) 2001.04.02 12:00 - 2007.05.29 11:59
Модель По ценам открытия (быстрый метод на сформировавшихся барах)
Параметры NL_length=99; NL_l=24; sl=107; tp=102; lots=0.1; MagicNumber=884;

Начальный депозит 1000.00
Чистая прибыль 3215.53
Абсолютная просадка 35.29
Максимальная просадка 507.54 (18.22%)
Относительная просадка 18.22% (507.54)

Всего сделок 119
Короткие позиции (% выигравших) 56 (64.29%)
Длинные позиции (% выигравших) 63 (65.08%)
Прибыльные сделки (% от всех) 77 (64.71%)
Убыточные сделки (% от всех) 42 (35.29%)
Самая большая прибыльная сделка 104.28
убыточная сделка -114.30
Средняя прибыльная сделка 101.97
убыточная сделка -110.38
Максимальное количество непрерывных выигрышей (прибыль) 9 (922.07)
непрерывных проигрышей (убыток) 3 (-330.91)


Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 29.5.2007, 11:46
Сообщение #12





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Любопытно, что если сделать ТП=СЛ=200, ТО ПРИБЫЛЬ увеличивается почти в два раза! Но и просадка тоже....
Но за шесть лет истории - это небольшая прибыль! Такую мы и в банке получим !
Её можно увеличить раза в полтора если отдельно предусмотреть стопы для длинных и коротких позициий!
Но всё равно мало....
Хочется ведь "сразу и много"!
Перейдем к последней рекомендации Ю.Решетова - вставим блок MONEY MANAGEMENT - чтобы увелчить прибыль - ну хотя бы в 100-200 раз!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 30.5.2007, 9:04
Сообщение #13





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Для этого нужно предусмотреть вызов библиотеки расчета лотов b-lots Игоря Кима, кот. положим в папку experts/include
при этом параметром LotsWayChuice ЗАДАюТСЯ способы расчета.
При =2 - фр/пропорциональный - по методу Р.Джонса ("Сделай миллион, играя числами")
При =3 - фр/фиксированный метод
При =1 - расчет лотов идет от размера депозита.

Итак, вот наш исходный график баланса (эквити) -


Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 30.5.2007, 9:18
Сообщение #14





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



//+------------------------------------------------------------------+
//| |
//| Copyright © 2007, Tradersforum. |
//| http://www.tradersforum.net.ru/ |
//| Leonid553 |
//+------------------------------------------------------------------+

#property copyright "Leonid553 http://www.tradersforum.net.ru/forum/"
#property link "http://www.tradersforum.net.ru/"
//---- input parameters
extern int NL_length=99;
extern int NL_l=24;
extern double sl = 107;
extern double tp = 102;
extern int MagicNumber = 888;
static int prevtime = 0;
static int spread = 3;
//-- Подключаемые модули --
#include <b-Lots.mqh> //Переменный лот

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
return(0);
}

int deinit()
{
return(0);
}
int start()
{
if(Time[0] == prevtime)
return(0);
prevtime = Time[0];

if(IsTradeAllowed())
{
spread = MarketInfo(Symbol(), MODE_SPREAD);
}
else
{
prevtime = Time[1];
return(0);
}
int ticket = -1;
int total = OrdersTotal();
if(total<1)
{ double NLa=iCustom(NULL,0,"NonLagMA_v5",0,NL_l,1,0,0,0,0,0,0);
double NLb=iCustom(NULL,0,"NonLagMA_v5",0,NL_l,1,0,0,0,0,0,1);
//-----------------------------------------------------------------

if ( na()>nb() && nb()>nc()&& NLa >na()&& NLb <na() )
{
//покупаем
Lots=GetSizeLot();// расчет лота - по библиотеке b-Lots
ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Bid - sl * Point, Ask+tp*Point,
"ST", MagicNumber, 0, Blue);
if(ticket < 0)
{
Sleep(30000);
prevtime = Time[1];
}
}
if ( na()<nb() && nb()<nc() && NLa <na()&& NLb >na())
{
// продаем
Lots=GetSizeLot();// расчет лота - по библиотеке b-Lots
ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 3, Ask + sl * Point, Bid-tp*Point,
"ST", MagicNumber, 0, Red);
if(ticket < 0)
{
Sleep(30000);
prevtime = Time[1];
}
}
}
return(0);
}

//----------------------------------------------------------------------------
double na()
{double NL0=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,0);
double NL1=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,1);
return ((NL0+NL1)*0.5) ;}

double nb()
{double NL2=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,2);
double NL3=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,3);
return ((NL3+NL2)*0.5) ;}

double nc()
{double NL4=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,4);
double NL5=iCustom(NULL,0,"NonLagMA_v5",0,NL_length,1,0,0,0,0,0,5);
return ((NL4+NL5)*0.5) ;}

// покупка ( na()>nb() && na()>nc() && nc()>nb())
// продажа ( na()<nb() && na()<nc() && nc()<nb())

Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 30.5.2007, 9:36
Сообщение #15





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



тогда получаем -

Символ GBPUSD (Great British Pound vs US Dollar)
Период 4 Часа (H4) 2001.04.02 12:00 - 2007.05.30 11:59
Модель По ценам открытия (быстрый метод на сформировавшихся барах)
Параметры NL_length=99; NL_l=24; sl=107; tp=102; MagicNumber=884;
Параметры модуля расчёта лота
LotsWayChoice=3;
Lots=0.1; LotsPercent=10; LotsDeltaDepo=500;
LotsDepoForOne=500; LotsMax=1000;


Начальный депозит 10000
Чистая прибыль 428596
Общая прибыль 1452800
Общий убыток -1024203
Абсолютная просадка 1079.99
Относительная просадка 70.99% (85309.16)

Всего сделок 119
Короткие позиции (% выигравших) 56 (64.29%)
Длинные позиции (% выигравших) 63 (65.08%)
Прибыльные сделки (% от всех) 77 (64.71%)
Убыточные сделки (% от всех) 42 (35.29%)
Самая большая прибыльная сделка 75174.00 убыточная сделка -98061.84

Вот такой получился "Грааль" ...


Эскизы прикрепленных изображений


Прикрепленные файлы
Прикрепленный файл  N0_NO_N0_ST_Filter.rar ( 1.05 килобайт ) Кол-во скачиваний: 620
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 8.6.2007, 5:49
Сообщение #16





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Вот ещё идея -
Предположим, что мы имеем некую автоматическую торговую систему. Профитную.
Пусть на входе этой системы имеются, для примера, - три параметра - A, B, C.
Пусть входы у нас по этой системе будут практически случайными!
Мы подбираем параметры (А-В-С), чтобы на выходе системы получить максимальный профит за период, например, 1 год т.е. оптимизируем.
Система работает без стопов - переворотами.
(Практически получилось, что такая система дает за год не менее +3000 пипсов при исходном капитале 1000$, и работе 0.1-лотом)
Далее, - для уменьшения риска и уменьшения просадки сделает так:
Включаем эту систему в реверсном режиме, - т.е. там, где ранее мы продавали, теперь будем покупать, а где покупали, теперь будем продавать!
Но перед этим, - сначала подберем опять (т.е. оптимизируем систему) три параметра А-В-С так, чтобы уже в реверсном режиме выход был не менее профитным, чем в изначальном режиме!
Что у нас получается?
При одновременном включении обоих систем (прямой и реверсной), мы будем иметь суммарный профит +6000 . При этом, - одновременно системы осмысленно (не в "тупую" !!!) работают во встречных режимах, уменьшая текущую относительную просадку!
Почему осмысленно, а не в тупую? Да потому, что реверсная система за счет иных параметров А-В-С будет работать с некоторым сдвигом относительно прямой системы! Уменьшая суммарные убытки. А прибыль поступательно, при этом, будет расти!
А значит, - мы смело можем подключить блок MONEY MANAGEMENT - и "возрадоваться над оным" !
вот такая идея ...
Можно попробовать совместно воплотить идею в конкретике.
Свести потом результаты в Экселл и обьединить две версии в одном советнике.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 10.6.2007, 19:38
Сообщение #17





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Что же касается рисков, то Именно в этом и предполагаю конечный смысл идеи. Не столько увеличить прибыль, - сколько уменьшить риски.
Хотя прибыль при этом (как оказалось ), - также, поступательно растет!
Вот на скорую руку, -пока примитивно реализовал идею.
Оптимизировал прямую и реверсную версию на 12-месячной истории GBPUSD, H1
С марта 2006 по март 2007. (Любопытно, - что реверсная версия при оптимизаци дала больший профит, чем версия прямая!)
Потом прогнал обе версии вне выборки, - за апрель/май/июнь 2007г.
Результаты ниже, - на графиках баланса


Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 12.6.2007, 6:07
Сообщение #18





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Продолжаю развивать идею. В качестве "заготовки" для реализации использован нейро/советник Artificial Intelligence (Искуственный интеллект) Ю.Решетова.
С некоторыми изменениями и дополнениями. В частности, - предусмотрен вызов иного базового индикатора для работы Перцептрона. А также добавлены дополнительные условия по открытию и сопровождению позиций.
GBPUSD, H1, 2.5-летняя история - январь 2005/май 2007г.
В прямой версии за этот период наблюдалось 250 сделок. В реверсной версии - 360.
За счет того, что уровень стоплосса оказался разным (при оптимизации).
Чистая Прибыль, - по каждой версии, - примерно +10000 пипсов (работа 0.1 лотом - без ММ).
Отношение прибыльных сделок к убыточным , - примерно 3:2 в обоих версиях.
Графики баланса по истории выглядят - см. рис.!
Легко заметить, что в значительном большинстве случаев убыточные участки прямой версии компенсируются прибыльными участками версии реверсной, и наоборот.
Более того, - там где на одном графике наблюдается "флет", - то на другом, как правило, идет подьем!
В итоге получаем максимальную прибыль при минимальном риске!
Конечно, всё это пока, скорее, - первые, эмоциональные впечатления!
Свел данные сделок в Экселл, но из-за расхождения дат сделок и отсутствия навыка пока не удается обработать материалы и построить суммарный график эквити....


Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 13.6.2007, 17:06
Сообщение #19





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Следующий шаг, - для моральной и эмоциональной поддержки, - установка блока MONEY MANAGEMENT.
Вставил библиотеку расчета лотов по версии Игоря Кима.
В оба советника.
Минимальная просадка получается при использовании Фр/пропорционального метода (Р.Джонс, "Сделай миллионы, играя числами").
Чистая Прибыль также минимальная - " всего" +80000 и +200000 соответственно!

Реверсная версия:
-------------------------------------------------------------------------
Начальный депозит 10000.00
Чистая прибыль +79864.93
Матожидание выигрыша 150.97
Максимальная просадка 16969.67 (23.98%)
Относительная просадка 33.23% (3511.48)
---------------------------------------------------------------------------

Прямая версия:
----------------------------------------------------------------------------
Начальный депозит 10000.00
Чистая прибыль +205035.51
Матожидание выигрыша 779.60
Абсолютная просадка 308.00
Максимальная просадка 25801.44 (12.27%)
Относительная просадка 18.14% (6971.07)

Всего сделок 263
Короткие позиции (% выигравших) 130 (60.00%)
Длинные позиции (% выигравших) 133 (62.41%)
Прибыльные сделки (% от всех) 161 (61.22%)
Убыточные сделки (% от всех) 102 (38.78%)
Самая большая прибыльная сделка 13354.20
убыточная сделка -3240.46
Средняя прибыльная сделка 2467.08
убыточная сделка -1883.96
Максимальное количество непрерывных выигрышей (прибыль) 9 (33415.82)
непрерывных проигрышей (убыток) 5 (-6143.22)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 13.6.2007, 19:00
Сообщение #20





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Ниже - графики балАнса при вкл. ММ
Странно, что в инверсном режиме число сделок почему-то возрастает с з60 до 550.
Так вроде не должно быть!
Ну никак не пойму, в чем дело!
На этих графиках ещё лучше видно как прибыль одного режима компенсирует убытки другого.
При поступательном росте общей прибыли!



Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

17 страниц V < 1 2 3 4 > » 
Ответить в эту темуОткрыть новую тему

 



- Текстовая версия Сейчас: 15.3.2025, 7:23