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

26 страниц V « < 4 5 6 7 8 > »   
Ответить в эту темуОткрыть новую тему
> Perceptron, Нейронная сеть
leonid553
сообщение 31.3.2007, 9:05
Сообщение #51





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



Вставил оптимизированные параметры для каждого индикатора.
Теперь следует разобраться с
double f1 = y1 - 100.0;
double f2 = y2 - 100.0;
double f3 = y3 - 100.0;
double f4 = y4 - 100.0;
return (p_1() * f1 + p_2() * f2 + p_3() * f3 + p_4() * f4);
----------------------------------------------------------------------------------
Понятно, что первый тест с лета - не дал приличного результата, хотя общий профит наблюдается!
Предположим, что мы желаем воспользоваться не сразу всеми - а лишь одним индикатором - стохастиком.
Пусть он у нас будет - как от р_1(STOCHASTIC)
тогда , видимо надо задать весовые коэт-ты остальных функций =100 , т.е. =0 в итоге:
double f1 = y1 - 100.0;
double f2 = y2 - 100.0=100-100=0;
double f3 = y3 - 100.0=100-100=0;
double f4 = y4 - 100.0=100-100=0;
тогда будет,

return (p_1() * f1 + p_2() * 0 + p_3() *0+ p_4() *0)=return (p_1() * f1) ;

И если при этом мы зададим f1=1(у1=101), или, иначе говоря:
double f1 = y1 - 100.0= 101-100=1;
то в результате теста должны получить результат , соответствующий индикатору Stochastic ( при этом необходими также задать соответствующийй sl - стоплосс)
Так вот!
Так не получается!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 31.3.2007, 9:42
Сообщение #52





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



Не могу понять, в чем дело!
сделал так с индикатором WPR.
А вот здесь результат сошелся с тестом версии WPR !

С индикаторм фишера - опять всё не так!

А с индикаторм АС - РЕЗУЛЬТАТ СОШЕЛСЯ ТОЖЕ!

нИЧЕГО НЕ ПОНИМАЮ!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 31.3.2007, 10:10
Сообщение #53





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



Поскольку тесты с WPR и АС соответствуют здравому смыслу решил пока оставить весовые коэф-ты стохастика и Фишера равными нулю (у1=у3=100).
После чего слегка оптимизировал стоплосс и весовые коэф-ты индикаторов АС и WPR
Любопытно, что число сделок (с 2004г.) возрасло.
По параметру SL результат оптимизируется. А вот по весам - почти не реагирует! (у2=у4=101)
----------------------------------------------------------------------------
Начальный депозит 10000.00
Чистая прибыль 5770.04
Общая прибыль 30794.36
Общий убыток -25024.32
Прибыльность 1.23
Матожидание выигрыша 5.94
Абсолютная просадка 759.76
Относительная просадка 10.80% (1119.00)
Всего сделок 972
Короткие позиции (% выигравших) 469 (60.55%)
Длинные позиции (% выигравших) 503 (61.03%)
Прибыльные сделки (% от всех) 591 (60.80%)
Убыточные сделки (% от всех) 381 (39.20%)
Самая большая
прибыльная сделка 369.76
убыточная сделка -67.56
Максимальное количество
непрерывных выигрышей (прибыль) 13 (813.04)
непрерывных проигрышей (убыток) 10 (-661.08)
-----------------------------------------------------------------------------
При этом отмечу, что прибыль при этом "двухслойном варианте" достигла =+5770,
в то время как по отдельности в однослойках результаты были =+5400 и = +5001 по АС и WPR соответственно !
Сейчас ещё и ММ вставлю ... для моральной поддержки ..! smile.gif


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





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



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





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



ОК! Понял.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 31.3.2007, 14:08
Сообщение #56





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



Исправил все недоработки. Система заработала так, как и положено!
В часности, обнаружилось, что в коде у стохастика надо добавить - двухполярную шкалу:
double a1 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 0)-50;
double a2 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 7)-50;
double a3 = iStochastic(Symbol(), 0, Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN,14)-50;
double a4 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 21)-50;
---------------------------------------------------------------------------------------------------------------
И ещё там (0-7-14-22) надо заменить на (0-7-14-21) - не знаю как так случилось!
Получается, что система работает наилучшим образом тогда, когда индикаторы друг другу "не мешают"!
За исключ. вышеописанного варианта АС+WPR !

Вроде бы нахожу этому обьяснение. mad.gif
Но пока - посмотри на график.
это кусочек работы со стохастиком , у=101(у остальных у=100)
Стох - самая прибыльная версия (+8786$ с мая 2004г) и поэтому предлагаю "плясать" именно от неё!
Здесь видно , что идут подряд две убыточных, лосевых сделки - против тренда, при этом перцептрон меньше нуля.
В то-же время значения инд. Фишера больше нуля и при правильно подобранных весовых коэф-тах, мы , как минимум, запретили бы вход в SELL в такой ситуации.
А в идеале - вошли бы в BUY !


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





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



Если нам удасться правильно организовать взаимодействие iStochastic и "Fisher_m11", - именно этих двух , то результаты сильно улучшаться! - это ещё мягко сказано!
Причем заметь - со стохастиком частенько так бывает - прёт , как баран, против тренда - и при этом остается самой выгодной версией!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 31.3.2007, 14:46
Сообщение #58





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



Вот идея появилась навскидку. Тоже может дать интересный результат.

Код

double perceptron()
  {
//----------------------------------------------------------------------
   double f1 = y1 - 100.0;
   double f2 = y2 - 100.0;
   double f3 = y3 - 100.0;
   double f4 = y4 - 100.0;

      return (p_1() * f1 + p_2() * f2 + p_3() * f3 + p_4() * f4);
  }
  
  // ---------------------------------------------------------------------------
  double p_1()
  {
   double w1 = z_1 - 100.0;
   double w2 = z_2 - 100.0;
   double w3 = z_3 - 100.0;
   double w4 = z_4 - 100.0;
   double a1 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 0);
   double a2 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 7);
   double a3 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 14);
   double a4 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 21);
   return (w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);
     }
   //-----------------------------------------------------------------------------
   double p_2()
   {
   double w1 = z_1 - 100.0;
   double w2 = z_2 - 100.0;
   double w3 = z_3 - 100.0;
   double w4 = z_4 - 100.0;
   double a1 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 0);
   double a2 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 6);
   double a3 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 12);
   double a4 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 18);
   return (w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);
     }  
   //-------------------------------------------------------------------------
   double p_3()
    {
   double w1 = z_1 - 100.0;
   double w2 = z_2 - 100.0;
   double w3 = z_3 - 100.0;
   double w4 = z_4 - 100.0;
   double a1 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 0);
   double a2 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 5);
   double a3 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 10);
   double a4 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 15);
   return (w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);
       }
   //---------------------------------------------------------------------------
    double p_4()
   {
   double w1 = z_1 - 100.0;
   double w2 = z_2 - 100.0;
   double w3 = z_3 - 100.0;
   double w4 = z_4 - 100.0;
   double a1 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 0);
   double a2 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 4);
   double a3 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 8);
   double a4 = iStochastic(Symbol(), 0,Stochastic_period, 3,3,MODE_SMA,0,MODE_MAIN, 12);
   return (w1 * a1 + w2 * a2 + w3 * a3 + w4 * a4);
      }
    
//+--------------------------------------------------------------------------------------+

Стохастик привёл только как пример, можно использовать любой другой индикатор. Фишка в выборе "контрольных точек".
Идей много, времени мало sad.gif
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 31.3.2007, 15:54
Сообщение #59





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



Цитата(NoName @ 31.3.2007, 14:46) *

Вот идея появилась навскидку. Тоже может дать интересный результат.

Идей много, времени мало sad.gif

Похоже, именно поэтому ты забыл приложить оптимизированные весовые для р_2 - р_4
smile.gif
(по фунту, напр.)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 31.3.2007, 18:30
Сообщение #60





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



но даже и в этом случае необходим фильтр - для предотвращения сделок против тренда!
Вот можно попробовать , например , осциллятор Эллиотта или индикатор OsMA.
Причем даже не нужно слишком оптимизировать весовые. Просто взять значения этих индикаторов - плюс и минус и применить к условиям входа.


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

26 страниц V « < 4 5 6 7 8 > » 
Ответить в эту темуОткрыть новую тему

 



- Текстовая версия Сейчас: 24.7.2024, 21:14