БИБЛИОТЕКА ПРОГРАММ OMEGA RESEARCH ( цифровая фильтрация )

25 января, 2009

 Автор : Николай Камынин  
Описание функции в программе на Easy Lanquaqe PowerEditor начинается выражением DefineDLLFunc:»C:\NKdllLib\NK04.DLL»,с последующим описанием конкретной функции.
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «INIT_NK»,float,int,int; { инициализация функций цифровой фильтрации }

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «DELAY_NK»,float;DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILTFILT_NK»,Lplong,double,double; { фильтр нулевые фазовые искажения}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILT_DCT_NK»,Lplong,int,int; { фильтр дискретное косинусное преобразование}

DefineDLLFunc:»C:\NKdllLib\NK04.DLL»,double, «DETREND_NK»,Lplong,int; { удаление линейного тренда }

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILT_SGOLAY_NK»,Lplong,double,double; { фильтр Савицкого-Голея}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILT_SOS_NK»,Lplong,double,double; { фильтр каскадный}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILT_LATC_NK»,Lplong,double,double; { фильтр решетчатый}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «FILT_PBURG_NK»,Lplong,double,double; { фильтр метод Бурга}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «FILT_PMEM_NK»,Lplong,double; { фильтр метод максимальной энтропии}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «FILT_FFT_NK»,Lplong,int,double;{ фильтр Быстрое преобразование Фурье}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «MaMi»,long,double;{ Фильтр экстремумов}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «LMD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «HMD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Summation»,Lplong,long,long;{ Скользящее среднее}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «LINEREV»,Lplong,long,long; { Линейная регрессия}

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «LB»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «HB»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,int, «Time_»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,int, «Minute_»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «LINERD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «FindSupRes»,long,double;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «medianD»,Lplong,long;{ фильтр медианный  }

   БИБЛИОТЕКА ПРОГРАММ ДЛЯ OMEGA RESEARCH  (свечи)

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NWHITE»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NBLACK»,long;

 DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «OD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «LD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «HD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «CD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,bool, «BWHITE»,Long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,bool, «BBLACK»,Long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,bool, «NoWhite»,Long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,bool, «NoBlack»,Long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «candleD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «ShhighD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «ShlowD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «bodyD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NUp»,Lplong,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NDoun»,Lplong,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NUpEq»,Lplong,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «NDounEq»,Lplong,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «BHDAY»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «BLDAY»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «BODYDAY»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «SHHDAY»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «SHLDAY»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «BHDBar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «BLDBar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «MAD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «MID»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «MAB»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «MIB»,long;

DefineDLLFunc: «C:NKdllLibNK04.DLL», long, «FMa»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «FMi»,long;

 DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «DRE»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «DSU»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «REB»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «SUB»,long;

DefineDLLFunc:»C:\NKdllLib\NK04.DLL»,long, «FRe»,long;

DefineDLLFunc:»C:\NKdllLib\NK04.DLL»,long, «FSu»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «SuBar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «RzBar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «RzD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «SuD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL», void, «SuLeft»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «RzLeft»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «BarWhite»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,, long, «BarBlack»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Su2Bar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Rz2Bar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Rz2D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Su2D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «Su2Left»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «Rz2Left»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Month_»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Day_»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «BhD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «BlD»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Su1Bar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Rz1Bar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Rz1D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Su1D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «Su1Left»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «SuLeftM2009»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «SuLeftM2009_2»;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Su3Bar»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «Rz3Bar»,long;

DefineDLLFunc: «C:NKdllLibNK04.DLL», double, «Rz3D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «Su3D»,long;

DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «Su3Left»;

БИБЛИОТЕКА ПРОГРАММ OMEGA RESEARCH

20 января, 2009

Автор : Николай Камынин  (Запрос библиотеки по e-mail бесплатно)
Все, кто применяет пакет программ Omega Research для технического анализа и торговли  акциями на фондовом рынке сталкиваются с проблемой необходимости установки начального начального участка Max number of bars study will reference. Если длина этого участка задается в режиме Auto-detect, то при обработке больших объемов исторических данных ( сотни тысяч тиков), процесс нахождения длительности переходного режима может затянуться на часы.
            Для исключения необходимости поиска длительности переходного начального участка при работе на Omega Research ProSuite 2000i , а также с целью расширения набора функций и ускорения работы системы в целом разработана библиотека программ на СИ и CPP, которая подключается при программировании стратегии и индикаторов на Easy Lanquaqe Power Editor как dll библиотека.
            В дальнейшем планируется размещение разработанной библиотеки на сайте. Далее приводится описание применения встроенных функций  для создания индикаторов и стратегий. 

При описании обращения к функциям в программах вместо символа П необходимо

вставить «C:\NKdll\LibNK04.DLL»,
           При написании программ на Easy Lanquaqe PowerEditor с применением моей библиотеки необходимо вставить первой строкой программы описание функции инициализации библиотеки с именем “NK04” в следующем виде:
 DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,void, «NK04»,Lplong, Lpint,Lplong,Lplong,Lplong,Lplong,Lplong,long,double,long;
 и затем вызвать эту функцию
NK04( &Date, &Time,&close,&open,&high,&low,&Volume,currentBar,PriceScale, 10);
 Первая строка, начинающаяся с DefineDLLFunc является описанием функции с именем NK04,предназначенной для  инициализации библиотеки;
Вторая строка представляет собой вызов функции инициализации библиотеки.
            При описании функций библиотеки выражение в кавычках C:\NKdllLib\NK04.DLL указывает имя диска –С:, имя папки — NKdll  и имя библиотеки  — LibNK04.DLL .
Библиотека может размещаться на любом диске и в любой папке, имена которых необходимо указать при описании функций библиотеки.
Функции библиотеки:
Для внутридневных данных:
DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «ODayD»,long; {цена открытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «CDayD»,long; {цена закрытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «HDayD»,long; {цена максимум дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «LDayD»,long; {цена минимума дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «ODBar»,long; {номер бара открытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «CDBar»,long; {номер бара открытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «HDBar»,long; {номер бара открытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «LDBar»,long; {номер бара открытия дня}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL», double, «OMonthD»,long; {цена открытия месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «CMonthD»,long;{цена закрытия месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «HMonthD»,long; {цена максимума месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,double, «LMonthD»,long; {цена минимума месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «CMonthBar»,long;{номер бара  закрытия месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «OMonthBar»,long;{номер бара  открытия месяца}
 DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «HMonthBar»,long;{номер бара  максимума месяца}
DefineDLLFunc: «C:\NKdllLib\NK04.DLL»,long, «LMonthBar»,long;{номер бара  минимума месяца}
Пример вызова в Easy Language Power Editor:
var: x(0); x=ODayD(0); {х присваивается цена открытия текущего дня}
(продолжение следует)