이상적인 필터 - 페이지 4

 

글쎄, 그렇다면 내 칠면조, 작은 지연 및 아기 엉덩이처럼 부드러운지 확인하십시오)))))

무서운 원리로...

파일:
vaMA.ex5  8 kb
 
JB :

무서운 원리로...

흥미로운 지표는 아마도 JJMA보다 열등하지 않을 것입니다. 언뜻보기에는 기간 설정이 너무 불균형하지만 선택하면 꽤 비슷한 그림을 얻을 수 있으며 어떤 곳에서는 다른 사람들에게는 더 빠릅니다. 하지만 사람들이 끔찍한 원칙 의 품질을 감상할 수 있도록 파일 을 혼동했을 가능성이 큽니다. :) *.mql5 파일이 필요합니다.

Документация по MQL5: Файловые операции / FileMove
Документация по MQL5: Файловые операции / FileMove
  • www.mql5.com
Файловые операции / FileMove - Документация по MQL5
 
EvMir :

사람들이 그 끔찍한 원리 의 품질을 감상할 수 있도록 :) *.mql5 파일이 필요합니다.

네, 저에게는 조금 창피합니다 ... 그들은 여전히 \u200b\u200b신인을 놀리고 망칠 것입니다 (((

 
JB :

네, 저에게는 조금 창피합니다 ... 그들은 여전히 \u200b\u200b신인을 놀리고 망칠 것입니다 (((

신인이 과학자라는 사실을 부끄럽게 여기기에는 너무 낮은 수준입니다.
 
server :
신인이 과학자라는 사실을 부끄럽게 여기기에는 너무 낮은 수준입니다.

알겠습니다. 위험을 감수하겠습니다. 코드가 작아서 스포일러가 없을 것 같습니다.

 //+------------------------------------------------------------------+
//|                                                              vaMA|
//|                                              Copyright 2013,  J.B|
//+------------------------------------------------------------------+
#property copyright "Copyright © 2013, J.B"

#property version   "1.00"

#include <MovingAverages.mqh>

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_plots   1

#property indicator_type1   DRAW_LINE
#property indicator_color1  Blue

input int vaMA_period= 15 ;
input bool use_double_smooth= 1 ;

double vaMA_buffer[],EMA[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+  
void OnInit ()
  {
   SetIndexBuffer ( 0 ,vaMA_buffer, INDICATOR_DATA );
   SetIndexBuffer ( 1 ,EMA, INDICATOR_CALCULATIONS );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total, const int prev_calculated, const int begin, const double &price[])
  {

   int first,bar;
   double vel,acc,aaa;

   ExponentialMAOnBuffer(rates_total,prev_calculated,begin,vaMA_period,price,EMA);                                   //Сгененрировать EMA c прайса

   if (rates_total<vaMA_period- 1 ) return ( 0 );                                                                            //
   if (prev_calculated== 0 )first=vaMA_period- 1 +begin;                                                                   //Проверка количества данных для цикла                                                                                      //
   else first=prev_calculated- 1 ;                                                                                     //

   for (bar=first; bar<rates_total; bar++)                                                                            //Цикл по массиву баров
     {
      vel = EMA[bar]-EMA[bar-vaMA_period/ 4 ];                                                                         //Приращение между барами
      acc = EMA[bar]- 2 *EMA[bar-vaMA_period/ 4 ]+EMA[bar-vaMA_period/ 8 ];                                                 //Приращение приращения между барами
      aaa = EMA[bar]- 3 *EMA[bar-vaMA_period/ 4 ]+ 3 *EMA[bar-vaMA_period/ 8 ]-EMA[bar-vaMA_period/ 12 ];                       //Приращение приращения приращения...                                                                                         
      vaMA_buffer[bar] = EMA[bar]+vel+acc/ 2 +aaa/ 6 ;                                                                   //Алхимический микс
     }
     
   if (use_double_smooth)  
   ExponentialMAOnBuffer(rates_total,prev_calculated,begin,vaMA_period/ 4 ,vaMA_buffer,vaMA_buffer);                   //Повторное EMA сглаживание


   return (rates_total);
  }
 
JB :

네, 저에게는 조금 창피합니다 ... 그들은 여전히 \u200b\u200b신인을 놀리고 망칠 것입니다 (((

그럴 가능성은 거의 없습니다. 건설적인 비판은 밀어붙일 수 있습니다. 그렇습니다. 그래서 최고입니다. 암호.
 

별도의 라이브러리 파일에 있는 " ExponentialMAOnBuffer" 배열의 함수로 하고 싶었지만 나에게는 그리 쉬운 일이 아니었습니다(((

 

EMA 오프셋 뒤에 숨겨진 아이디어 계수가 있는 "파생" ala Taylor 확장... 기술적으로 간단하지만 가장 좋은 것으로 간주되는 사소한 JJMA 와 관련하여 상당히 그럴듯합니다.

 

색상 옵션.


파일:
vaMAColor.mq5  5 kb
 

좋은 필터, 인정합니다. 아이디어는 간결하고 효과적입니다. 모멘텀으로만 이동하는 것은 잘 알려진 주제이지만, 고차로 증가하는 것은 본 적이 없습니다.

그러나 똑같이 평평한 영역에서 현대화(적응)하고 잘못된 신호가 많지 않도록 평활화 기간을 늘려야 합니다. 즉, 그렇게 쉽게 나올 수는 없을 것입니다 :) 색상이 변하는 지점에 ZZ를 지정하면 이러한 필터에서 간단한 TS가 어떻게 작동하는지 알 수 있습니다.