пятница, 24 февраля 2012 г.

Парный трейдинг: бэктест стратегии, методика

В дувух словах как делаю бэктест стратегии в MultiCharts'e.
По традиции - пара USCB vs. BAVL.

inputs: USCBLots ( 1000 ), BAVLLots ( 2000 );
variables : var0(""), SPR(0);

var0=getsymbolname; 

SPR=Close data2 * USCBLots - Close data3 * BAVLLots ;
// теперь мы можем оперировать со спредом
// как с самостоятельным символом
// например, условие может выглядеть как SPR>1.1*SPR[1]
// т.е., спред вырос более чем на 10%    

// Long Entry;
if ..... //сформулированное правило для входа в лонг по спреду
// лонг по спреду => лонг по USCB + шорт по BAVL
then begin
    if var0="USCB" then buy USCBLots shares next bar open
    else if var0="BAVL" then sellshort BAVLLots shares next bar open;
    end;

// Short Entry;
if ..... //сформулированное правило для входа в шорт по спреду 
// шорт по спреду == шорт по USCB + лонг по BAVL
then begin
    if var0="USCB" then sellshort USCBLots shares next bar open
    else if var0="BAVL" then buy BAVLLots shares next bar open;
    end;

// Exit Conditions;
if ...... then  begin
    sell this bar close;
    buytocover this bar close;
    end;


Вот и все премудрости кода.
Теперь настройки тестера:































Вот теперь - все!
Удачи!

2 комментария:

  1. А ты спреды именно как разницу строишь или это просто пример?
    ИМХО спреды в виде отношения более стабильны что-ли, цены на инструменты могут сильно измениться, а отношение может и остаться примерно то же.
    При этом простая разница сильно разойдется.

    ОтветитьУдалить
    Ответы
    1. Для визуализации - именно так.
      А для расчетов, сигналов, вычислений - по-разному, в т.ч. и как отношение цен, стоимостей и т.д.

      Удалить