0
155
для MetaTrader4
|
Импорт функций библиотекиИмпорт всех доступных в библиотеке функций осуществляется следующим образом:
#import "\\Market\\CustomHLOC_Free.ex4"
Пример использования библиотеки в советнике:
void SetPathLib( string path // путь к библиотеке включая имя ); string GetLibInfo(); void InitHistory( string symbol, // символ ENUM_TIMEFRAMES timeframe // период ); int uBars( string symbol, // символ ENUM_TIMEFRAMES timeframe // период ); datetime uTime( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uHigh( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uLow( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uOpen( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uClose( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); long uVolume( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); #import
// Откомпилируйте этот пример, поставьте на график M1 любого символа
// и попробуйте во входном параметре поставить стандартные и нестандартные таймфреймы. #property copyright "©Yurij Kozhevnikov" #property link "https://www.mql5.com/ru/users/y.a.k._/seller" #property strict #property description "Демонстрационное подключение библиотеки CustomHLOC_Free" #import "\\Market\\CustomHLOC_Free.ex4" void SetPathLib( string path // путь к библиотеке включая имя ); string GetLibInfo(); void InitHistory( string symbol, // символ ENUM_TIMEFRAMES timeframe // период ); int uBars( string symbol, // символ ENUM_TIMEFRAMES timeframe // период ); datetime uTime( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uHigh( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uLow( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uOpen( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); double uClose( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); long uVolume( string symbol, // символ ENUM_TIMEFRAMES timeframe, // период int shift // сдвиг ); #import bool Start; int I; input ENUM_TIMEFRAMES TF; int OnInit() { I=0; Start=true; SetPathLib("\\Libraries\\Market\\CustomHLOC_Free.ex4"); InitHistory(_Symbol,TF); Print("Библиотека ",GetLibInfo()); Print("Символ ",_Symbol); Print("Период ",EnumToString(TF)); return(INIT_SUCCEEDED); } void OnTick() { if (Start) { Print("iBars(PERIOD_M1)=",iBars(_Symbol,PERIOD_M1)); Print("iBars(",EnumToString(TF),")=",iBars(_Symbol,TF)); Print("uBars(",EnumToString(TF),")=",uBars(_Symbol,TF)); Print("iTime(",EnumToString(TF),",uBars-1)=",iTime(_Symbol,TF,uBars(_Symbol,TF)-1)); Print("uTime(",EnumToString(TF),",uBars-1)=",uTime(_Symbol,TF,uBars(_Symbol,TF)-1)); Start=false; } if (I>=200) { Print("--------------------------------------------------"); Print("iTime(PERIOD_M1,0)=",iTime(_Symbol,PERIOD_M1,0)); Print("iTime(PERIOD_M1,1)=",iTime(_Symbol,PERIOD_M1,1)); Print("uTime(",EnumToString(TF),",0)=",uTime(_Symbol,TF,0)); Print("------------------------"); Print("iOpen(PERIOD_M1,0)=",iOpen(_Symbol,PERIOD_M1,0)); Print("iOpen(PERIOD_M1,1)=",iOpen(_Symbol,PERIOD_M1,1)); Print("uOpen(",EnumToString(TF),",0)=",uOpen(_Symbol,TF,0)); Print("------------------------"); Print("iLow(PERIOD_M1,0)=",iLow(_Symbol,PERIOD_M1,0)); Print("iLow(PERIOD_M1,1)=",iLow(_Symbol,PERIOD_M1,1)); Print("uLow(",EnumToString(TF),",0)=",uLow(_Symbol,TF,0)); Print("------------------------"); Print("iHigh(PERIOD_M1,0)=",iHigh(_Symbol,PERIOD_M1,0)); Print("iHigh(PERIOD_M1,1)=",iHigh(_Symbol,PERIOD_M1,1)); Print("uHigh(",EnumToString(TF),",0)=",uHigh(_Symbol,TF,0)); Print("------------------------"); Print("iClose(PERIOD_M1,0)=",iClose(_Symbol,PERIOD_M1,0)); Print("iClose(PERIOD_M1,1)=",iClose(NULL,PERIOD_M1,1)); Print("uClose(",EnumToString(TF),",0)=",uClose(_Symbol,TF,0)); Print("------------------------"); Print("iVolume(PERIOD_M1,0)=",iVolume(_Symbol,PERIOD_M1,0)); Print("iVolume(PERIOD_M1,1)=",iVolume(_Symbol,PERIOD_M1,1)); Print("uVolume(",EnumToString(TF),",0)=",uVolume(_Symbol,TF,0)); I=0; } I++; } |