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

26 страниц V < 1 2 3 4 5 > »   
Ответить в эту темуОткрыть новую тему
> Perceptron, Нейронная сеть
NoName
сообщение 27.3.2007, 10:57
Сообщение #21





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)




Код

// check for opened position
   int total = OrdersTotal();  
//----
   for(int i = 0; i < total; i++)
     {
       OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
       // check for symbol & magic number
       if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
         {
           int prevticket = OrderTicket();
           // long position is opened
           if(OrderType() == OP_BUY)
             {
               // check profit
               if(Bid > (OrderStopLoss() + (sl * 2  + spread) * Point))
                 {              
                   if(perceptron() < 0)
                     { // reverse
                    
                  ...
                  ...
                  ...
  
                     }
                 }  
             }
           // exit
           return(0);
         }
     }


В момент запуска у нас открытых позиций нет. Поэтому советник выполняя вышеприведенный блок не обнаружит ордера на текущем символе да ещё и со своим Magic'ом
Код
if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)  

А значит пропускаются все дальнейшие проверки и действия в данном блоке.
И условия на вход проверяются в блоке, который ниже:

Код

// check for long or short position possibility
   if(perceptron() > 0)
     { //long
       ticket = OrderSend(Symbol(), OP_BUY, lots, Ask, 3, Bid - sl * Point, 0, "AI",
                          MagicNumber, 0, Blue);
       //----
       if(ticket < 0)
         {
           Sleep(30000);
           prevtime = Time[1];
         }
     }
   else
     { // short
       ticket = OrderSend(Symbol(), OP_SELL, lots, Bid, 3, Ask + sl * Point, 0, "AI",
                          MagicNumber, 0, Red);
       if(ticket < 0)
         {
           Sleep(30000);
           prevtime = Time[1];
         }
     }


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





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



бдагодарю.
Сейчас разберусь!
Только что пришла ещё вот какая мысль.
В авторскои версии использован индикатор АО.
но там граничные значения шкалы - от +0.005 до -0.005
Более того - сейчас на графике фунта крайние значения от +0.003515 до -0.003200 !
И конечно , вес контрольных точек до 200 единиц оправдан!
Но у нас то - граничные значения шкалы от +50 до -50 !
И придавая вес = от единиц до 200 мы в итоге получаем все что можно, но только не то что нужно!
Какие уж тут +25 и -25 в итоге , если разброс значений Х1-Х4 составляет у нас от десятков единиц до 10 тысяч!
Похоже опять не в кон!
Надо задавать весовые коэффициенты, видимо от 0.05 до 1 ? Либо опять по новой менять шкалу стохастика.
Как считаешь?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 27.3.2007, 11:19
Сообщение #23





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Цитата
чтобы избежать подгонки при оптимизации решил оптимизировать по всей доступной истории.
С мая 2004г. закачаны минутки с Альпари по всем тф. А с янв. 2007г - текущие котировки Лайта.
Результат получился - от +6000 до +8500 (м30 и н1)
Даже "побаловался" с контрольными точками.
Не думаю, что на этот раз имеет место подгонка! Три года - это не месяц-два, и подгонка здесь мало вероятна!


ИМХО
Оптимизация уже сама по себе подразумевает подгонку! Ты перебираешь всевозможные параметры с целью получения максимальной прибыли. И получаешь в результате те параметры на которых прибыль максимальна. Но это совершенно не значит что была выявлена какая-то закономерность. Большой период оптимизации немного снижает, но совсем не исключает подгонку. Прояснить ситуацию может только форвард-тест! Вот почему было не сделать оптимизацию с 2004 по янв 2007, а период с января по сегодня оставить для теста ???
Мне кажется что только по результатам теста за эти три месяца можно судить о надёжности параметров полученных при отимизации до этого периода!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 27.3.2007, 11:40
Сообщение #24





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Цитата
В авторскои версии использован индикатор АО.
но там граничные значения шкалы - от +0.005 до -0.005
Более того - сейчас на графике фунта крайние значения от +0.003515 до -0.003200 !
И конечно , вес контрольных точек до 200 единиц оправдан!
Но у нас то - граничные значения шкалы от +50 до -50 !
И придавая вес = от единиц до 200 мы в итоге получаем все что можно, но только не то что нужно!
Какие уж тут +25 и -25 в итоге , если разброс значений Х1-Х4 составляет у нас от десятков единиц до 10 тысяч!
Похоже опять не в кон!
Надо задавать весовые коэффициенты, видимо от 0.05 до 1 ? Либо опять по новой менять шкалу стохастика.
Как считаешь?


Я думаю что нет никакой разницы в значении весовых коэффициентов.
Если посмотреть на конечную формулу
Код
return(w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);

то из неё видно что если у нас стох ниже 0, то и соответствующее слагаемое приймет отрицательное значение, будь весовой коэффициент хоть 1 хоть 100. А окончательное решение мы принимаем по сумме этих коэффициентов, если значение отрицательных больше - то пойдём вниз, иначе вверх. Главное что бы не оказалось что один коэффициент будет 1 а другой 100, вот тогда точно получим всё что можно wink.gif
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 27.3.2007, 12:49
Сообщение #25





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



Вставил вот этот кусочек!
double a1 = iStochastic(NULL,0, Stochastic_period, Dperiod, 3, MODE_SMA, 0, MODE_MAIN, P_1)- 50;
double a2 = iStochastic(NULL,0, Stochastic_period, Dperiod,3, MODE_SMA, 0, MODE_MAIN, P_2)- 50;
double a3 = iStochastic(NULL,0, Stochastic_period, Dperiod,3, MODE_SMA, 0, MODE_MAIN, P_3) - 50;
double a4 = iStochastic(NULL,0, Stochastic_period, Dperiod, 3, MODE_SMA, 0, MODE_MAIN, P_4) - 50;
Однако, когда вызываю график - то там по прежнему шкала от 0 до 100


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





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Всё правильно. Шкала и не изменится, т.к вызывается стандартный индикатор. А дальше мы уже крутим его значениями как хотим, это никак не может изображаться на графике.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 28.3.2007, 8:33
Сообщение #27





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



В соотв. с вышеизложенными резонами подготовил пока два варианта советника - со стохастиком (ниж. график баланса) и с инд. WPR( верх. график)
Оптимизировал за период с с 2004г. по дек. 2006.
Далее зарядил тестер с янв. 2007 - и по обоим вариантам получилась прибыль , примерно по 200-500 пипсов в месяц в среднем - за янв. , февраль и март !
Переоптимизировал по всей истории - с 2004 по сей день.
Результаты - на графике.
С инд. WPR:
Сделок 637=+399-238
Чист.. прибыль=+4990
Отн. просадка =-1400
Непр. выигрышей=14
-------проигрышей=11
процент выигр. позиций=63%
-------------------------------------------------
С инд. Стохастик ситуация чуть лучше:
Качество моделирования 89.47%
Начальный депозит 10000.00
Чистая прибыль 8040.52
Общая прибыль 27672.92
Общий убыток -19632.40
Абсолютная просадка 469.84
Относительная просадка 10.11% (1071.60)
Всего сделок 692
Короткие позиции (% выигравших) 349 (65.62%)
Длинные позиции (% выигравших) 343 (65.31%)
Прибыльные сделки (% от всех) 453 (65.46%)
Убыточные сделки (% от всех) 239 (34.54%)
Самая большая прибыльная сделка 555.16
убыточная сделка -86.00
Максимальное количество непрерывных выигрышей (прибыль) 18 (1299.24)
непрерывных проигрышей (убыток) 8 (-664.96)
---------------------------------------------------------------------------------------------------
Далее, видимо, нужно отследить участки графиков, где линии балонсов идут в разные стороны и выяснить - почему так случилось!


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





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Цитата
Оптимизировал за период с с 2004г. по дек. 2006.
Далее зарядил тестер с янв. 2007 - и по обоим вариантам получилась прибыль , примерно по 200-500 пипсов в месяц в среднем - за янв. , февраль и март !


Вот это уже хороший результат! И данный советник реальный кандидат для постановки на демо тестированиеsmile.gif
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 28.3.2007, 10:35
Сообщение #29





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



Да, пожалуй...
Но хотелось бы уж сразу многослойку заряжать на демотест!
(Хочется ведь - чтобы было "много и сразу !"...)
Вот ещё одна идея попутно пришла. smile.gif
До сих пор мы использовали индикаторы, в кот. вершины(впадины) соответствуют вершинам(впадинам) на графике цены .
Т.е. экстремальные значения индикаторов - появляются на переломах трендовых движений цены!
Однако, если взять индикатор, где переломы тренда будут отображаться не как макс и мин. значений, а как пересечение линии индикатора своей же средней (в нашем случае - нулевой) линии?
Недостаток таких индикаторов - они перерисовываются сразу по неск. барам в соотв. с движением цены.
Но в нашем случае - в советнике - этот момент может напротив, обернуться достоинством! В силу специфики работы перцептрона!
У нас получаются , как бы, качели - при правильно подобранных весовых коэффициентах мы будем получать сигналы на вход - в сторону наклона качелей! При этом - в самом начале трендового движения!
Вспомнилось, что в "НЕСТАНДАРТНОЙ" тактике TURAMI предлагал использовать такой индикатор - из группы индикаторов Алекса.
Вставил этот индикатор в советник.
Индикатор - в закачке...


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


Прикрепленные файлы
Прикрепленный файл  105460_ang_Itpm3_v1.rar ( 1.4 килобайт ) Кол-во скачиваний: 462
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 28.3.2007, 17:27
Сообщение #30





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



to NoName:
Что-то никак не подберу параметры с индикатором Алекса.
Закралось подозрение - что неправильно заявил iCustom.
Пож. исправь - если не трудно! -
double a1 = iCustom(NULL,0,"ang_DItpm3-v1",hr,ss,11,0,P_1);
Нашелся и еще один кандидат на тестирование.
Версия с индикатором Фишера.
После обучения на трехлетней истории тест дал с янв. 2007г. +1240 пипсов !
А вот общий итог(с мая 2004г):
--------------------------------------------------------------------------------------------
Начальный депозит 1000.00
Чистая прибыль 6222.84
Общая прибыль 28094.56
Общий убыток -21871.72
Матожидание выигрыша 8.11
Максимальная просадка 1315.32 (19.24%)
Относительная просадка 26.64% (356.44)
Всего сделок 767
Короткие позиции (% выигравших) 377 (58.62%)
Длинные позиции (% выигравших) 390 (60.77%)
Прибыльные сделки (% от всех) 458 (59.71%)
Убыточные сделки (% от всех) 309 (40.29%)
Самая большая прибыльная сделка 369.64
убыточная сделка -72.80
Максимальное количество непрерывных выигрышей (прибыль) 11 (668.52)
непрерывных проигрышей (убыток) 10 (-712.16)
--------------------------------------------------------------------------------------------------------
В закачке - советник, тест с параметрами и индикатор Фишера.
На графиках баласа видно - что , например, в самом начале истории на стохастике и WPR идет небольшой слив, в то время как на Фишере (нижний) в этот период напротив - активно растет профит!
При многослойке это , возможно даст нам любопытный результат!


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


Прикрепленные файлы
Прикрепленный файл  _____________3_.rar ( 40.73 килобайт ) Кол-во скачиваний: 516
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

26 страниц V < 1 2 3 4 5 > » 
Ответить в эту темуОткрыть новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 28.3.2024, 11:27