[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Адаптивный советник UmnickTrader - страница 28

 
sever30:
правильно ли я понял, что преимущество Вашего советника, перед остальными, в БЭК тесте на длительном временном интервале?

Видимо, да. Только более правильно - форвард-тесте.
 
Mathemat:

Где необходимая отрицательная обратная связь (ООС) между ф.р. и с.ф., дающая реальный механизм синхронизации?

Ты проводил ее исследования, этой ООС, - или это только твои задумки на отдаленное будущее?


    if( resultTransaction > 0 ) {
     // последняя сделка прибыльная
     arrayProfit[currentIndex] = maxProfit;
     arrayLoss[currentIndex] = StopBase;
    }
    else
    if( resultTransaction < 0 ) {
     // последняя сделка убыточная
     arrayProfit[currentIndex] = StopBase;
     arrayLoss[currentIndex] = drawDown;
...
    }

   // вычисляем лимиты и стопы
   sumProfit = 0.;
   sumLoss = 0.;
   for( i=0; i<SIZE_BUF; i++ ) {
    sumProfit = sumProfit+arrayProfit[i];
    sumLoss = sumLoss+arrayLoss[i];
   }
   limit = sumProfit/SIZE_BUF;
   stop = sumLoss/SIZE_BUF;

Возможны другие варианты реализации, но этот вариант достаточно универсальный.

Не знаю, что ты имеешь в виду под "исследованиями". Вариантов было перепробовано сотни, тестов было десятки тысяч. Конечно не под МТ, а под своей платформой.

 
LeoV:

Всё-таки можете как-то более детально пояснить, для тех кто не понял, что такое это собственная функция, как она вычисляется или на чем строится?


Собственная функция выдумывается любой - зависит от фантазии.

Например, захотели и сделали такую функцию:

покупаю, цель 20 пунктов; продаю, цель 50 пунктов; покупаю, цель 70 пунктов.

Далее, кодируете её.

Но, торговля разрешается только в определённые периоды времени, для того, чтобы работала вторая часть алгоритма - синхронизация:

bool NextBar()
{
 bool rt = false;
// double price = (Open[1]+High[1]+Low[1]+Close[1])/4;
 double price = (iOpen( NULL, timeframe, 1 )+iHigh( NULL, timeframe, 1 )+iLow( NULL, timeframe, 1 )+iClose( NULL, timeframe, 1 ))/4;
 if( MathAbs(price-pricePrev) >= StopBase ) {
  pricePrev = price;
  rt = true;
  if( IsOptimization() == false && IsTesting() == false )
   Print("NextBar ", price);
 }
 return(rt);
}

 if( NextBar() == true ) {
  // разрешение на анализ при открытии следующей позиции
  if( GetCountOpenOrders( currentIdOrder ) == 0 ) {
   // открытых позиций нет - проверяем результат последней сделки
...
 

Ветка остается на месте. Виктор, ты представлен к бану - за неуважение к форуму.

Я все же отчасти рад, что ветка наконец-то хоть на время вернулась к конструктиву.

Внимание модераторов к этой ветке остается прежним. Искусственное поддержание ветки в топе легко вычисляется, и в случае выявления подобных случаев будут приняты жесткие меры.

___________________________________________________________

hhohholl, еще один флудерский пост - и Вы тоже будете представлены к бану, но за непонятливость.

 
VictorArt:


Собственная функция выдумывается любой - зависит от фантазии.

Например, захотели и сделали такую функцию:

покупаю, цель 20 пунктов; продаю, цель 50 пунктов; покупаю, цель 70 пунктов.

Далее, кодируете её.

Но, торговля разрешается только в определённые периоды времени, для того, чтобы работала вторая часть алгоритма - синхронизация:


У вас же умник, который сам это кодирует? Или нет?
 

Виктор,

Удосужился я все таки полностью и вдумчиво прочитать текст программы...

В коде советника имеется блок, выполняющийся, в том числе, при условии

IsTesting() == false

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

if( NextBar() == true )

, который никак не зависит от наличия/отсутствия режима тестирования.

Совершенно очевидно, что при таком раскладе работа советника в тестере и на счету будут совершенно различны. Любой желающий /рискнуть/ может в этом убедиться лично.

Вопрос к вам - ...?

//а, собственно, какие тут вопросы, все предельно ясно: никаких "функций", "теорий" и прочей белиберды там, естественно, нет. Есть обычный переворотный алгоритм на основе анализа результата (одной, хаха) последней сделки с выставлением стопов по средним уровням профитности-убыточности за некий период. Одним словом, оригинальности исчезающе мало, смысла еще меньше, особенно с учетом моего первого замечания. Мой вывод - ваша, Виктор, ОТТ и иже с ней всего лишь плод больных фантазий. Удручающая картина.



 
alsu: Совершенно очевидно, что при таком раскладе работа советника в тестере и на счету будут совершенно различны.

Ну вот и приплыли......
 
alsu:

Виктор,

Удосужился я все таки полностью и вдумчиво прочитать текст программы...

В коде советника имеется блок, выполняющийся, в том числе, при условии

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

, который никак не зависит от наличия/отсутствия режима тестирования.

Совершенно очевидно, что при таком раскладе работа советника в тестере и на счету будут совершенно различны. Любой желающий /рискнуть/ может в этом убедиться лично.

Вопрос к вам - ...?

//а, собственно, какие тут вопросы, все предельно ясно: никаких "функций", "теорий" и прочей белиберды там, естественно, нет. Есть обычный переворотный алгоритм на основе анализа результата (одной, хаха) последней сделки с выставлением стопов по средним уровням профитности-убыточности за некий период. Одним словом, оригинальности исчезающе мало, смысла еще меньше, особенно с учетом моего первого замечания. Мой вывод - ваша, Виктор, ОТТ и иже с ней всего лишь плод больных фантазий. Удручающая картина.

Неужели вот эту надпись:

"Внимание! Данный исходный код предназначен только для использования в тестере МТ4, но не для реальной торговли. Для реальной торговли необходим специальный дополнительный код здесь отсутствующий."

здесь не прочитали? :)

Что касается обычного переворотного алгоритма, то продемонстрируйте сначала форвард-тест за 9 лет какого-то своего заурядного советника - будет о чём поговорить.

 
Mathemat:

Виктор, ты представлен к бану - за неуважение к форуму.

Спасибо, я уже привык к банам :)

Ты уж тогда себя за компанию забань, за "демагогию" и "цирк". А то, что я не скажу - то демагогия и цирк, неважно, что проблема не во мне, а в твоих знаниях по данной теме.

 
Mathemat:

Чем твой ПАММ принципиально отличается от советника, выложенного в кодобазе?

Программной платформой. МТ4 используется только как исполнительная подсистема, получает торговую команду - исполняет.

Тестер, эмулятор и прочее - всё своё.

На ПАММе реализуется весь технологический процесс от автоматического создания нового робота, до его отключения в случае потери эффективности. Просадка в основном из-за потери эффективности у нескольких роботов. Подробнее лучше в ветке ПАММа смотреть.

Причина обращения: