[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 161
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
En el Indicador que puse (para luego compararlos con el Tiempo[i]):
Luego, en el bucle
Como resultado, StrToTime (StartRange) y StrToTime(EndRange) producen ceros .
- ¿Por qué y cómo lo arreglo?
Oops. ¿Y cómo te las arreglas para poner una variable datetime en la función StrToTime? ¡Debería haber una cuerda en ella!
¿O crees que el formulario de trabajo D'1970.12.24' es una cadena? Se equivoca.
¿Quizás necesites TimeToStr?
Esto hace que StrToTime (StartRange) y StrToTime(EndRange) produzcan ceros .
- ¿Por qué y cómo solucionarlo?
Obviamente fue mi error (malinterpretado Ejemplo
de la documentación). Resulta que es posible comparar la variable "datetime" directamente con Time[i].
Gracias por la ayuda.
//+------------------------------------------------------------------+
//| Custom MACD.mq4 |
//| Copyright © 2004, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net/"
//---- indicator settings
#property indicator_separate_window
#property indicator_buffers 3
#property indicator_color1 Silver
#property indicator_color2 Red
#property indicator_color3 Blue
#property indicator_width1 2
//---- indicator parameters
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
extern int SMA=12;
//---- indicator buffers
double MacdBuffer[];
double SignalBuffer[];
double EMABuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- drawing settings
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexStyle(1,DRAW_LINE);
SetIndexStyle(2,DRAW_LINE);
SetIndexDrawBegin(1,SignalSMA);
IndicatorDigits(Digits+1);
//---- indicator buffers mapping
SetIndexBuffer(0,MacdBuffer);
SetIndexBuffer(1,SignalBuffer);
SetIndexBuffer(2,EMABuffer);
//---- name for DataWindow and indicator subwindow label
IndicatorShortName("MACD("+FastEMA+","+SlowEMA+","+SignalSMA+","+SMA+")");
SetIndexLabel(0,"MACD");
SetIndexLabel(1,"Signal");
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence |
//+------------------------------------------------------------------+
int start()
{
int limit;
int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
//---- macd counted in the 1-st buffer
for(int i=0; i<limit; i++)
MacdBuffer[i]=iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);
//---- signal line counted in the 2-nd buffer
for(i=0; i<limit; i++)
SignalBuffer[i]=iMAOnArray(MacdBuffer,Bars,SignalSMA,0,MODE_SMA,i);
//---- done
for(i=0; i<limit; i++)
EMABuffer[i]=iMAOnArray(MacdBuffer,Bars,SMA,0,MODE_SMA,i);
//---- done
return(0);
}
//+------------------------------------------------------------------+
¿como puedo hacer un MA con un offset negativo por ejemplo -5 barras, cuando lo pongo a -5 se dibuja una mierda?
как мне сделать МА с отрицательным смещением например на -5 баров, когда ставлю -5 рисует каюто фигню ??
¿Por qué una mierda? ¿Hay algo que no quieras ver? ¡¡¡¡O me estoy perdiendo algo !!!!
Arriba está su variante, abajo está la variante con un desplazamiento de -5 ! solo por -5 barras desplazadas, que es lo que está mal o equivocado????????
¿Por qué una mierda? ¿Hay algo que no quieras ver? ¡¡¡¡O me estoy perdiendo algo !!!!
Arriba está su variante, abajo está la variante con un desplazamiento de -5 ! solo por -5 barras desplazadas, que es lo que está mal o equivocado????????
Bueno, eso es cierto, pero cuando intento invocar el EA.
//+------------------------------------------------------------------+
//| fgfgfgfgfgf.mq4 |
//| Evgenio |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Evgenio"
#property link "http://www.metaquotes.net"
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
extern int SMA=12;
//---переменные----------
double k,k1,k2;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
k=NormalizeDouble(iCustom(Symbol(),0,"MACD+мувинг",FastEMA,SlowEMA,SignalSMA,SMA,0,0),5);
k1=NormalizeDouble(iCustom(Symbol(),0,"MACD+мувинг",FastEMA,SlowEMA,SignalSMA,SMA,1,0),5);
k2=NormalizeDouble(iCustom(Symbol(),0,"MACD+мувинг",FastEMA,SlowEMA,SignalSMA,SMA,2,0),5);
if (OrdersTotal()<=2)
{
if (k>0 && k2>k1+0.0005)
ObjectCreate("down"+Time[1], OBJ_ARROW, 0, Time[1], Open[1]+100*Point);
ObjectSet("down"+Time[1], OBJPROP_ARROWCODE, 242);
ObjectSet("down"+Time[1], OBJPROP_COLOR, Yellow);
}
return(0);
}
//+------------------------------------------------------------------+
no funciona.
Esto es lo que hago
1. realizar una prueba en un periodo determinado
2. Adjunto un indicador
3 Me sale algo extraño.
¿Cómo puedo hacer
Quiero que mi EA abra una orden sólo una vez al día.
Si abrió una orden, luego la cerró y se desconectó hasta el día siguiente.
Entiendo, necesito buscar la última operación del historial... compararla con la fecha y si la orden ya se ha cerrado ese día, entonces desactivar el EA...
¿estás pensando en la dirección correcta?
No puedo entenderlo del todo. Soy nuevo en mql.
Buenas tardes, colegas.
Por favor, aconseje cómo explicar los puntos de inflexión de la línea en el software, es decir, al experto, es decir, el experto tiene que distinguir entre dos opciones de posición МА: МА creciente, МА decreciente.