Выполняем разнообразные торговые модели на


Глава 1 Глава 2 Глава 3
// Выполняем разнообразные торговые модели на лунных циклах. // file = xl3modOl.c // parms — набор [1..MAXPRM] параметров // dt — набор [l..nb] дат в формате ГГММДД // орn — набор [1..nb] цен открытия // hi - набор [l..nb] максимальных цен // 1о — набор [1..nb] минимальных цен // cls — набор [l..nb] цен закрытия // vol - набор [l..nb] значений объема // oi — набор [1..nb] значений открытого интереса // dlrv — набор [1..nb] средних долларовых волатильностей / / nb — количество дней в наборе данных // ts — ссылка на класс торгового симулятора // eqcls — набор [1..nb] уровней капитала по ценам закрытия // объявляем локальные переменные static int rc, cb, ncontracts, maxhold, ordertype, signal; static int avglen, disp, k, modeltype, matype, mktindx;

static float mmstp, ptlim, stpprice, limprice, tmp, thresh; static float exitatr[MAXBAR+1] , savg[MAXBAR+1] ; static float mal[MAXBAR+1], ma2[MAXBAR+1], stoch[MAXBAR+1]; static float *exitatrtab[MAXMKT+1], *savgtab[MAXMKT+1] ; //копируем параметры в локальные переменные avglen = parms[1]; // период скользящей средней disp = parms[2]; // множитель смещения thresh = parms[3]; // порог для импульсных моделей matype = parms[7]; // тип средней: // 1=простое скользящее среднее // 2=экспоненциальное // 3=треугольное с переднем взвешиванием // 4=треугольное // 5=простое центрованное // 6=экспоненциальное центрованное // 7=треугольное центрованное modeltype = parms[8]; // тип модели: // 1=импульс // 2=пересечение // 3- пересечение с подтверждением // 4=пересечение с подтверждением и инверсией ordertype = parms[9]; // вход: 1=на открытии, 2=по лимитному приказу, // 3 =по стоп- приказу maxhold = 10; // период максимального удержания позиции ptlim = 4; // целевая прибыль в единицах волатильности mmstp = 1; // защитная остановка в единицах волатильности
Содержание раздела