Обобщенный мувинг - для разработчиков - страница 2

 
Поигрался с разницей между этими мувингами. Вот скрипт:

extern int _SMMA_PERIOD = 100;

int start()
{
   int handle = FileOpen( "ema_smma.csv", FILE_CSV | FILE_WRITE, " " );
   for( int i = Bars - 1; i >= 0; i-- )
   {
      double diff = iMA( NULL, 0, _SMMA_PERIOD, 0, MODE_SMMA, PRICE_CLOSE, i ) - 
                 iMA( NULL, 0, 2*_SMMA_PERIOD - 1, 0, MODE_EMA, PRICE_CLOSE, i ); 
      double diff_n = NormalizeDouble( diff, 8 );              
      FileWrite( handle, "i = ", i, "\t\t difference = ", diff_n );
   }
   FileClose( handle );   
   return(0);
}



Чем больше период, тем позднее разница исчезает в полный нуль с точностью до 8 знаков. Ну так оно и должно быть: чем больше период, тем ближе затухание к 1, т.е. тем большее влияние на текущее значение индюкатора оказывают дальние исторические цены.

При периоде SMMA, равном 100, разница становится нулевой примерно на первых полутора тысячах баров (EURUSD H4). При периоде 10 - в районе 100 баров. Все с этим SMMA ясно...