El metodo Antonov

Todo sobre el trading en los mercados financieros: funcionamiento, dudas, noticias, etc.
Responder
Avatar de Usuario
deemstr
Mensajes: 338
Registrado: 06 Jul 2006 19:49

El metodo Antonov

Mensaje por deemstr »

Después de leer el articulo de X-tr el Método Antonov

https://www.x-trader.net/articulos/tecn ... tonov.html

He encontrado por ahí el código correspondiente ( o por lo menos esto creo ), si alguien se anima a probarlo ... por aquí lo dejo

Perdonad, pero no se como ponerlo así que va en modo texto

saludos



//+------------------------------------------------------------------+
//| i-Sessions.mq4 |
//| Ким Игорь В. aka KimIV |
//| http://www.kimiv.ru |
//| |
//| 16.11.2005 Индикатор торговых сессий |
//+------------------------------------------------------------------+
#property copyright "Ким Игорь В. aka KimIV"
#property link "http://www.kimiv.ru"

#property indicator_chart_window

//------- Внешние параметры индикатора -------------------------------
extern int NumberOfDays = 50; // Количество дней
extern string AsiaBegin = "01:00"; // Открытие азиатской сессии
extern string AsiaEnd = "10:00"; // Закрытие азиатской сессии
extern color AsiaColor = Goldenrod; // Цвет азиатской сессии
extern string EurBegin = "07:00"; // Открытие европейской сессии
extern string EurEnd = "16:00"; // Закрытие европейской сессии
extern color EurColor = Tan; // Цвет европейской сессии
extern string USABegin = "14:00"; // Открытие американской сессии
extern string USAEnd = "23:00"; // Закрытие американской сессии
extern color USAColor = PaleGreen; // Цвет американской сессии


//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
void init() {
DeleteObjects();
for (int i=0; i<NumberOfDays; i++) {
CreateObjects("AS"+i, AsiaColor);
CreateObjects("EU"+i, EurColor);
CreateObjects("US"+i, USAColor);
}
Comment("");
}

//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
void deinit() {
DeleteObjects();
Comment("");
}

//+------------------------------------------------------------------+
//| Создание объектов индикатора |
//| Параметры: |
//| no - наименование объекта |
//| cl - цвет объекта |
//+------------------------------------------------------------------+
void CreateObjects(string no, color cl) {
ObjectCreate(no, OBJ_RECTANGLE, 0, 0,0, 0,0);
ObjectSet(no, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet(no, OBJPROP_COLOR, cl);
ObjectSet(no, OBJPROP_BACK, True);
}

//+------------------------------------------------------------------+
//| Удаление объектов индикатора |
//+------------------------------------------------------------------+
void DeleteObjects() {
for (int i=0; i<NumberOfDays; i++) {
ObjectDelete("AS"+i);
ObjectDelete("EU"+i);
ObjectDelete("US"+i);
}
}

//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
void start() {
datetime dt=CurTime();

for (int i=0; i<NumberOfDays>5) dt=decDateTradeDay(dt);
}
}

//+------------------------------------------------------------------+
//| Прорисовка объектов на графике |
//| Параметры: |
//| dt - дата торгового дня |
//| no - наименование объекта |
//| tb - время начала сессии |
//| te - время окончания сессии |
//+------------------------------------------------------------------+
void DrawObjects(datetime dt, string no, string tb, string te) {
datetime t1, t2;
double p1, p2;
int b1, b2;

t1=StrToTime(TimeToStr(dt, TIME_DATE)+" "+tb);
t2=StrToTime(TimeToStr(dt, TIME_DATE)+" "+te);
b1=iBarShift(NULL, 0, t1);
b2=iBarShift(NULL, 0, t2);
p1=High[Highest(NULL, 0, MODE_HIGH, b1-b2, b2)];
p2=Low [Lowest (NULL, 0, MODE_LOW , b1-b2, b2)];
ObjectSet(no, OBJPROP_TIME1 , t1);
ObjectSet(no, OBJPROP_PRICE1, p1);
ObjectSet(no, OBJPROP_TIME2 , t2);
ObjectSet(no, OBJPROP_PRICE2, p2);
}

//+------------------------------------------------------------------+
//| Уменьшение даты на один торговый день |
//| Параметры: |
//| dt - дата торгового дня |
//+------------------------------------------------------------------+
datetime decDateTradeDay (datetime dt) {
int ty=TimeYear(dt);
int tm=TimeMonth(dt);
int td=TimeDay(dt);
int th=TimeHour(dt);
int ti=TimeMinute(dt);

td--;
if (td==0) {
tm--;
if (tm==0) {
ty--;
tm=12;
}
if (tm==1 || tm==3 || tm==5 || tm==7 || tm==8 || tm==10 || tm==12) td=31;
if (tm==2) if (MathMod(ty, 4)==0) td=29; else td=28;
if (tm==4 || tm==6 || tm==9 || tm==11) td=30;
}
return(StrToTime(ty+"."+tm+"."+td+" "+th+":"+ti));
}
//+------------------------------------------------------------------+
Avatar de Usuario
X-Trader
Administrador
Mensajes: 12798
Registrado: 06 Sep 2004 10:18
Contactar:

Mensaje por X-Trader »

Disculpad el lapsus (gracias por el recordatorio, deemstr), os pongo por aqui el codigo para Metatrader para configurar la pantalla como en la imagen del artículo.

Saludos,
X-Trader
Adjuntos
antonov.rar
(25.32 KiB) Descargado 239 veces
"Los sistemas de trading pueden funcionar en ciertas condiciones de mercado todo el tiempo, en todas las condiciones de mercado en algún momento del tiempo, pero nunca en todas las condiciones de mercado todo el tiempo."
Responder

Volver a “Trading en General”