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
Hola Mladen,
Quiero hacer un análisis de similitud en los datos de forex.
Es decir, quiero encontrar la barra de 1 hora más correlacionada (el mismo valor o el más similar en OHLC) con la última barra de 1 hora (OHLC) en el historial de 20.000 barras (OHLC).
¿Es el coeficiente de correlación de Pearson suficiente para encontrar la similitud del valor de la última barra en el historial de 20.000 barras?
estimado mlade
Hago mi primer indicador MTF
pero el color es negro
¿como arreglarlo?
muchas gracias
estimado mlade:
Hago mi primer indicador MTF
pero el color es negro
¿como arreglarlo?
muchas gracias
Hola Mladen,
Quiero hacer un análisis de similitud en los datos de forex.
Es decir, quiero encontrar la barra de 1 hora más correlacionada (el mismo valor o el más similar en OHLC) con la última barra de 1 hora (OHLC) en el historial de 20.000 barras (OHLC).
¿Es el coeficiente de correlación de Pearson suficiente para encontrar la similitud del valor de la última barra en el historial de 20.000 barras?
Mladen,
¿Algún comentario al respecto?
Mladen,
¿algún comentario al respecto?
Poner el #property indicator_color1 al color deseado (ahora está puesto en negro)
señor mladen
Lo hago pero solo tengo un color
necesito dos colores para el mercado alcista y bajista
señor mladen
Lo hago pero solo tengo un color
necesito dos colores para el mercado de toros y osos
Entonces tienes que codificar de forma diferente (tienes que usar dos buffers no sólo uno para el histograma de dos colores)
¿Es correcto, señor?
//+------------------------------------------------------------------+
//| MTF_xb4d.mq4
//|------------------------------------------------------------------+
#property ventana_de_separación
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_width1 2
#property indicator_color2 PaleVioletRed
#propiedad indicador_ancho2 2
//---- parámetros de entrada
/*************************************************************************
PERIOD_M1 1
PERIOD_M5 5
PERIOD_M15 15
PERIOD_M30 30
PERIOD_H1 60
PERIOD_H4 240
PERIOD_D1 1440
PERIODO_W1 10080
PERIOD_MN1 43200
Debe utilizar el valor numérico del timeframe que desea utilizar
cuando establezca el valor de TimeFrame' con las entradas del indicador.
---------------------------------------*/
extern int TimeFrame=0;
extern int period = 10;
extern int AppliedPrice=0;
extern bool SoundAlerts=false;
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Función de inicialización del indicador personalizada ||.
//+------------------------------------------------------------------+
int init()
{
//---- línea del indicador
SetIndexStyle(0, DRAW_HISTOGRAM);
SetIndexStyle(1, DRAW_HISTOGRAM);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexBuffer(1, ExtMapBuffer1);
//---- nombre para la etiqueta de la DataWindow y la subventana del indicador
switch(TimeFrame)
{
case 1 : string TimeFrameStr="Period_M1"; break;
case 5 : TimeFrameStr="Period_M5"; break;
case 15 : TimeFrameStr="Period_M15"; break;
case 30 : TimeFrameStr="Period_M30"; break
case 60 : TimeFrameStr="Period_H1"; break
caso 240 : TimeFrameStr="Period_H4"; break;
case 1440 : TimeFrameStr="Period_D1"; break;
case 10080 : TimeFrameStr="Period_W1"; break
case 43200 : TimeFrameStr="Period_MN1"; break
default : TimeFrameStr="Periodoactual";
}
IndicatorShortName(" MTF_xb4d ("+TimeFrameStr+" ) ");
return(0);
}
//----
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int inicio()
{
datetime TimeArray[];
int,limit,y=0,counted_bars=IndicatorCounted();
// Trazar el marco de tiempo definido en el marco de tiempo actual
ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);
limit= Bars-1;
for(i=0,y=0;i<limit;i++)
{
if (Time[i]<TimeArray[y]) y++;
/***********************************************************
Añada su bucle principal de indicador a continuación. Puede hacer referencia a un
existente con su iName o iCustom.
Regla 1: Añadir entradas externas arriba para todos los valores necesarios
Regla 2: Utilice 'TimeFrame' para el marco de tiempo del indicador
Regla 3: Utilice 'y' para el valor de desplazamiento de su indicador
**********************************************************/
ExtMapBuffer1[i]=iCustom(Symbol(),TimeFrame, "xb4d",period,0,y);//iRSI(Symbol(),TimeFrame,period,AppliedPrice,y);
}
if(GlobalVariableGet(Symbol()+"previndicator")<0 && ExtMapBuffer1[0]>=0)
if(SoundAlerts){Alert("Alerta de compra " + Symbol() + " [" + Period() + "] ");PlaySound("alert.wav");}
if(GlobalVariableGet(Symbol()+"previndicator")>=0 && ExtMapBuffer1[0]<0)
if(SoundAlerts){Alert("Alerta de venta " + Symbol() + " [" + Period() + "] ");PlaySound("alert.wav");}
GlobalVariableSet(Symbol()+"previndicador",ExtMapBuffer1[0]);
return(0);
}
//+------------------------------------------------------------------+
¿Es correcto, señor?
//+------------------------------------------------------------------+
//| MTF_xb4d.mq4
//|------------------------------------------------------------------+
#property ventana_de_separación
#property indicator_buffers 2
#property indicator_color1 LimeGreen
#property indicator_width1 2
#property indicator_color2 PaleVioletRed
#propiedad indicador_ancho2 2
//---- parámetros de entrada
/*************************************************************************
PERIOD_M1 1
PERIOD_M5 5
PERIOD_M15 15
PERIOD_M30 30
PERIOD_H1 60
PERIOD_H4 240
PERIOD_D1 1440
PERIODO_W1 10080
PERIOD_MN1 43200
Debe utilizar el valor numérico del marco temporal que desea utilizar
cuando establezca el valor de TimeFrame' con las entradas del indicador.
---------------------------------------*/
extern int TimeFrame=0;
extern int period = 10;
extern int AppliedPrice=0;
extern bool SoundAlerts=false;
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Función de inicialización del indicador personalizada ||.
//+------------------------------------------------------------------+
int init()
{
//---- línea del indicador
SetIndexStyle(0, DRAW_HISTOGRAM);
SetIndexStyle(1, DRAW_HISTOGRAM);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexBuffer(1, ExtMapBuffer1);
//---- nombre para la etiqueta de la DataWindow y la subventana del indicador
switch(TimeFrame)
{
case 1 : string TimeFrameStr="Period_M1"; break;
case 5 : TimeFrameStr="Period_M5"; break;
case 15 : TimeFrameStr="Period_M15"; break;
case 30 : TimeFrameStr="Period_M30"; break
case 60 : TimeFrameStr="Period_H1"; break
caso 240 : TimeFrameStr="Period_H4"; break;
case 1440 : TimeFrameStr="Period_D1"; break;
case 10080 : TimeFrameStr="Period_W1"; break
case 43200 : TimeFrameStr="Period_MN1"; break
default : TimeFrameStr="Periodo actual";
}
IndicatorShortName(" MTF_xb4d ("+TimeFrameStr+" ) ");
return(0);
}
//----
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int inicio()
{
datetime TimeArray[];
int,limit,y=0,counted_bars=IndicatorCounted();
// Trazar el marco de tiempo definido en el marco de tiempo actual
ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);
limit= Bars-1;
for(i=0,y=0;i<limit;i++)
{
if (Time[i]<TimeArray[y]) y++;
/***********************************************************
Añada su bucle principal de indicador a continuación. Puede hacer referencia a un
existente con su iName o iCustom.
Regla 1: Añadir entradas externas arriba para todos los valores necesarios
Regla 2: Utilice 'TimeFrame' para el marco de tiempo del indicador
Regla 3: Utilice 'y' para el valor de desplazamiento de su indicador
**********************************************************/
ExtMapBuffer1[i]=iCustom(Symbol(),TimeFrame, "xb4d",period,0,y);//iRSI(Symbol(),TimeFrame,period,AppliedPrice,y);
}
if(GlobalVariableGet(Symbol()+"previndicator")<0 && ExtMapBuffer1[0]>=0)
if(SoundAlerts){Alert("Alerta de compra " + Symbol() + " [" + Period() + "] ");PlaySound("alert.wav");}
if(GlobalVariableGet(Symbol()+"previndicator")>=0 && ExtMapBuffer1[0]<0)
if(SoundAlerts){Alert("Alerta de venta " + Symbol() + " [" + Period() + "] ");PlaySound("alert.wav");}
GlobalVariableSet(Symbol()+"previndicador",ExtMapBuffer1[0]);
return(0);
}
//+------------------------------------------------------------------+
¿Se muestran los colores como querías?
querida mladen:
encuentro mtf de ello en https://www.forex-tsd.com/forum/debates-discussions/1131-multi-timeframe-indicators/page762#comment_1831838
muchas gracias por su ayuda a todos los miembros
que dios bendiga tu vida