Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 87

 
Forexman77:

Ahora tienes que encontrar el precio máximo en este rango de tiempo. Puedo encontrar el precio máximo:

pero no puedo relacionarlo con el rango de tiempo. ¿Puede decirme cómo hacerlo?

Lo he montado, pero aún no lo he probado. Parece que funciona

int start(){
 int StartHour=8,StartMinute=1;// Время 08:01
 int StopHour=23,StopMinute=58; // Время 23:58
 int StartTime=StartHour*60+StartMinute;
 int StopTime=StopHour*60+StopMinute;
 int CurrentMinutesFromDayStart=Hour()*60+Minute();// Текущее время в минутах от начала дня
 if(CurrentMinutesFromDayStart>=StartTime && CurrentMinutesFromDayStart<=StopTime) {
  // Для торговли внутри дня
 }
// Ищем максимум
 datetime td=iTime(Symbol(),PERIOD_D1,0);// Время открытия дневного бара в секундах от 01.01.1970
 int start=0;// Если конец временного диапазона ещё не наступил, начинаем поиск максимума с текущего бара
 if(CurrentMinutesFromDayStart>StopTime) {
  datetime ts=td+StopTime*60;// конец временного диапазона в секундах от 01.01.1970
  start= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
 }
 int count=0;// Сколько баров до StartTime
 if(CurrentMinutesFromDayStart>StartTime) {
  ts=td+StartTime*60;// начало временного диапазона в секундах от 01.01.1970
  count= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
  count= count-start;// Сколько баров длится временной интервал
 }
 double Maximum=iHigh(Symbol(),PERIOD_M1,iHighest(Symbol(),PERIOD_M1,MODE_HIGH,count,start));//Находим максимум на заданном временном интервале
 return(0);
}
 
GBDD21:
¿cómo se configura un EA?
con las manos, y con la cabeza, por supuesto... :)
Y, si estás en medio de la nada, puedes leerlo.
 
GBDD21:
¿cómo configurar un EA?
Con un destornillador
 
Sin embargo, ¿cómo puedo encontrar el máximo de un intervalo de tiempo determinado? He probado esto y una alerta para comprobarlo, pero no funciona.
datetime StartTime1=StrToTime(TimeToStr(TimeCurrent(),TIME_DATE)+" 12:00");
datetime StopTime1=StrToTime(TimeToStr(TimeCurrent(),TIME_DATE)+" 23:00");

if(TimeCurrent()>=StartTime1 && TimeCurrent()<=StopTime1)
    {
    int BarStart = iBarShift(NULL,0,StartTime1,false);
    int BarEnd   = iBarShift(NULL,0,StopTime1,false);
    double Max_Price=iHigh(NULL,0,iHighest(NULL,0,MODE_HIGH,BarStart-BarEnd,BarEnd));
       if (Max_Price==true)
            {
            Alert(" Max_Price= ",Max_Price);
            }
   }
 
GBDD21:
¿Cómo se configura un EA?
https://www.mql5.com/ru/articles/1385 - artículo "Probar y optimizar los EA"
 
Hola a todos, por favor, decidme quien sabe! Quiero suscribirme a una señal de trading ( de pago) y trabajar en mi ordenador de sobremesa durante el día y dejarlo en mi netbook por la noche .... ¿tendré que suscribirme dos veces en dos terminales? quiero hacer una pregunta, me he suscrito a la señal pero abro el segundo terminal y está vacío.... me gustaría hacer una pregunta más exacta. ¿es posible abrir una misma suscripción (señal) en diferentes terminales (en una cuenta, por supuesto) ....?
 
Forexman77:
Sin embargo, ¿cómo puedo encontrar el máximo de un intervalo de tiempo determinado? He intentado hacerlo así y comprobar la alerta, pero no funciona.

Bueno, ya lo he escrito y ahora lo he probado, y funciona.

#property copyright "Copyright 2013, Mikhail <Sepulca>  Kozhemyako"
#property link      "ua3xcm@obninsk.ru"
extern int StartHour=8;
extern int StartMinute=1;
extern int StopHour=23;
extern int StopMinute=58;
int OldBar;
int init() { OldBar=Bars-1;return(0);}
int deinit() {return(0);}
int start(){
 double Maximum;
 int StartTime=StartHour*60+StartMinute;
 int StopTime=StopHour*60+StopMinute;
 int CurrentMinutesFromDayStart=Hour()*60+Minute();// Текущее время в минутах от начала дня
 if(CurrentMinutesFromDayStart>=StartTime && CurrentMinutesFromDayStart<=StopTime) {
  // Для торговли внутри дня
 }
 datetime td=iTime(Symbol(),PERIOD_D1,0);// Время открытия дневного бара в секундах от 01.01.1970
 int start=0;// Если конец временного диапазона ещё не наступил, начинаем поиск максимума с текущего бара
 if(CurrentMinutesFromDayStart>StopTime) {
  datetime ts=td+StopTime*60;// конец временного диапазона в секундах от 01.01.1970
  start= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
 }
 int count=0;// Сколько баров до StartTime
 if(CurrentMinutesFromDayStart>StartTime) {
  ts=td+StartTime*60;// начало временного диапазона в секундах от 01.01.1970
  count= iBarShift(Symbol(),PERIOD_M1,ts,false);// смещение бара, которому принадлежит ts
  count= count-start;// Сколко баров длится временной интервал
  Maximum=iHigh(Symbol(),PERIOD_M1,iHighest(Symbol(),PERIOD_M1,MODE_HIGH,count,start));//Находим максимум на заданном временном интервале
 }
 else Maximum=-1;
 if(OldBar<Bars){Print("Текущее время в минутах=",CurrentMinutesFromDayStart," Максимум с ",StartTime," минуты по ",StopTime," минуту =",DoubleToStr(Maximum,Digits));OldBar=Bars;}
 return(0);
}
 
Hola. Estoy intentando instalar una plantilla en Metatrader en un VPS, pero no funciona, aunque todo funciona bien en mi ordenador de casa, ¿me podéis decir cuál es el problema?
 
Sepulca:

Bueno ya he escrito y ahora lo he probado, funciona.


Muchas gracias. Hoy me he caído del vagón. Me han robado dinero de mi cartera de kiwi((( Acaba de terminar con los correos electrónicos sobre el robo.

 
artmedia70:
Destornillador
¡Eso es un ajuste duro! ¡Una afinación más fina para que el alma cante!