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
Indicador Gráfico Offline
No hay nada especial que usted necesita para codificar dentro del indicador. Simplemente arrastra y suelta el indicador desde nagivator al gráfico offline y funcionará. Pruebe primero con los datos normales disponibles con metatrader, por ejemplo eurusd. Si el indicador funciona con el eurusd y no lo hace con el NYSE, significa que el indicador cuenta algo de manera incorrecta y necesita ser arreglado/ajustado (por ejemplo, tal vez necesita redondear o durante los cálculos genera un error como la división de cero).
Hola Kalenzo,
Gracias por tu respuesta. Los indicadores de la plataforma MT4 funcionan muy bien. Es un indicador personalizado que un individuo codificado que no funciona. Me he dado cuenta en el código de los símbolos de la moneda. Me preguntaba si tengo que cambiar los símbolos de los pares de divisas GBPUSD al símbolo de NYSE? También quería saber cómo funcionan los indicadores. ¿Qué datos en qué carpeta hacen los indicadores si los indicadores que se instalaron originalmente en la plataforma o es descargar un indicador codificado libre?
¡¡¡Gracias!!!
Hola Kalenzo,
Gracias por su respuesta. Los indicadores de la plataforma MT4 funcionan muy bien. Es un indicador personalizado que un individuo codificado que no funciona. Me he dado cuenta en el código de los símbolos de la moneda. Me preguntaba si tengo que cambiar los símbolos de los pares de divisas GBPUSD al símbolo de NYSE? También quería saber cómo funcionan los indicadores. ¿Qué datos en qué carpeta hacen los indicadores si los indicadores que se instalaron originalmente en la plataforma o es descargar un indicador codificado libre?
¡¡¡Gracias!!!¡Hola!
Sí, definitivamente necesita comprobar el código del indicador. Si su indicador no está usando la función Symbol() (o el valor NULL en lugar del símbolo donde se necesita) entonces es el problema para el 100%. Por lo general, el indicador transforma los datos del gráfico al que se adjuntan, por lo que los indicadores originales de MT4 funciona. Sin embargo, en los indicadores personalizados puedes tomar datos de otros símbolos/marcos de tiempo y entonces necesitas especificar manualmente qué datos deseas utilizar. Por ejemplo, usted puede usar EURUSD como base y usar también GBPUSD y USDCHF como algunos otros parámetros para el cálculo.
Usted necesita revisar el código del indicador, y cambiar los símbolos al NYSE que usted desea calcular. Entonces funcionará bien.
Gracias de nuevo por su ayuda
Gracias de nuevo por toda su ayuda.
Problema de depuración
Escribo un EA básico para entender el funcionamiento de los indicadores, pero me he llevado alguna sorpresa. Primero con el indy repintado y ahora con el indy muy básico.
Para entender los números uso una función print() para imprimir los valores en el informe de registro durante un backtest. Pero la función print parece perturbar la impresión del log y pierdo una gran parte del log. ¡quitando el print el log está completo con todas las órdenes!
¿Alguna idea? Aquí un extracto de mi código
//----+ DEFINIENDO LAS SEÑALES PARA LAS OPERACIONES
if (kline[1] < Level_Up) // por debajo del umbral
if (kline[0] > dline[0]) // Señal principal de sobreventa
if (kline[0] > kline[1]) // Principal debe subir
if (dline[0] > 0 ) { /La señal debe permanecer nostálgica en el nivel cero < dline[1]) { // Principal anterior bajo señal por lo que cruzamos al alza
Señal_de_compra = true;
if (Debug) {
Print ("Longopen K0 ",DoubleToStr(kline[0],Digits)," K1 ",DoubleToStr(kline[1],Digits),
" K2 ",DoubleToStr(kline[2],Dígitos), "K3 ",DoubleToStr(kline[3],Dígitos));
Print (" D0 ",DoubleToStr(dline[0],Digits)," D1 ",DoubleToStr(dline[1],Digits)," D2 ",DoubleToStr(dline[2],Digits),
" D3 ",DoubleToStr(dline[3],Digits));
}
}
Gracias por la ayuda
Marcel
¡Por favor, ayuda! No soy un codificador, pero estoy tratando de mi mejor aquí. ¡Cualquier consejo sobre por qué mi indicador no funciona sería muy apreciado!
Gracias de antemano
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 LimeGreen
#property indicator_color2 FireBrick
#property indicator_color3 Verde
#property indicator_color4 Rojo
#Propiedad indicator_width1 2
#Propiedad indicator_width2 2
#Propiedad indicator_width3 2
#property indicador_ancho4 2
//---------------------------------------------------------------------indicator parameters
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
//---------------------------------------------------------------------indicator buffers
double OsmaBuffer[];
double Spm
double Smm
double Spmaks1;
double Spmaks2
double Smmin1
double Smmin2;
double nou[];
double ver[];
double OsMAUP[];
double OsMADOWN[];
//+------------------------------------------------------------------+
//| Función de inicialización de los indicadores personalizados ||.
//+------------------------------------------------------------------+
int init()
{
//--------------------------------------------------------------------2 se utilizan buffers adicionales para el conteo.
IndicatorBuffers(4);
//--------------------------------------------------------------------drawing settings
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,OsMAUP);
SetIndexStyle(1,DRAW_HISTOGRAM);
SetIndexBuffer(1,OsMADOWN);
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2,159);
SetIndexBuffer(2,Spmaks1);
SetIndexStyle(3,DRAW_ARROW);
SetIndexArrow(3,159);
SetIndexBuffer(3,Smmin1);
SetIndexDrawBegin(0,SignalSMA);
IndicatorDigits(Digits+2);
//-------------------------------------------------------------------nombre para la etiqueta de la DataWindow y la subventana del indicador
IndicatorShortName("OsMA Marius("+FastEMA+", "+SlowEMA+", "+SignalSMA+")";
//-------------------------------------------------------------------initialization done
return(0);
}
//+------------------------------------------------------------------+
//| Promedio Móvil del Oscilador ||.
//+------------------------------------------------------------------+
int inicio()
{
int límite;
int counted_bars=IndicatorCounted();
//-------------------------------------------------------------------la última barra contada se volverá a contar
if(counted_bars>0) counted_bars--;
limit=Barras contadas_barras;
//-------------------------------------------------------------------Main Loop
for(int i=0; i<limit; i++)
{
OsmaBuffer=iOsMA(NULL,0,FastEMA,SlowEMA,SignalSMA,PRICE_WEIGHTED,i);
nou = OsmaBuffer;
ver = OsmaBuffer;
if(OsmaBuffer > 0)
{
OsMAUP = OsmaBuffer;
OsMADOWN = 0;
}
si no
{
OsMADOWN = OsmaBuffer;
OsMAUP = 0;
}
//-------------------------------------------------------------------Cross Down
si ((nou0))
{
Spmaks1 = Spmaks2;
if(Spmaks2 > 0)
{
Spmaks2 = 0;
}
}
//-------------------------------------------------------------------Cross Up
if ((nou>0)&&(ver<0))
{
Smmin1 = Smmin2;
if(Smmin2 < 0)
{
Smmin2 = 0;
}
}
//-------------------------------------------------------------------During Swing
if(ver > 0)
{
Spm = ver;
if((nou > ver) || (nou == ver))
{
Spm = nou;
}
if((Spm > Spmaks2) | (Spm == Spmaks2))
{
Spmaks2 = Spm;
}
}
si no
{
Smm = ver;
if((nou < ver) || (nou == ver))
{
Smm = nou;
}
if((Smm < Smmin2) || (Smm == Smmin2))
{
Smmin2 = Smm;
}
}
}
//--------------------------------------------------------------------done
return(0);
}
//+------------------------------------------------------------------+
Cómo trazar la línea entre las últimas 20 barras
¡Tengo una pregunta!
Quiero tener un indicador de media móvil.
Siempre dibuja la línea entre las últimas 20 barras
Pero no sé cómo escribirlo
Espero que me puedan ayudar y ofrecer un indicador como este .
¡Muchas gracias!
Paz a todos,
Espero que todo esté bien con todos.
Mi pregunta es bastante simple para aquellos calificados en el área de programación:
Tengo un e.a. creado profesionalmente para mí, utilizando 3 indicadores en su estado crudo. Es un sistema de 4 estrategias codificadas en un e.a. donde los 3 indicadores se negocian en diferentes combinaciones. Sólo un poco de historia, pero esta parte es realmente irrelevante.
Los 3 indicadores utilizan dos buffers cada uno y la única variable que tenían era "CountBars". Como estaban en un estado en el que no eran optimizables, siendo que la única opción ajustable era "CountBars", tuve la brillante idea de usar el algoritmo de Jurik como una especie de preprocesamiento. De esta manera podría mantener la crudeza del indicador, es decir, que reaccionara rápidamente pero con varios "contratiempos", y al mismo tiempo añadir un factor de suavización que siguiera siendo muy sensible y, al mismo tiempo, con poco retardo. Así que le pedí a un conocido miembro de este foro que me ayudara con esa parte del proyecto, lo que hicieron y de forma bastante impecable, debo añadir. Sin embargo, ya que fueron más allá de la llamada del deber, no quise pedirles que me hicieran más favores, es decir, cambiar las nuevas versiones suavizadas de Jurik de los mismos indicadores en lugar de sus subordinados crudos.
Dicho esto, pensé: "¿Qué tan difícil puede ser?" Pensé que sabía lo suficiente como para hacerlo yo mismo. Solo cambie los nombres que son llamados en las 3 instancias de iCustom, agregue las nuevas variables en la parte "externa" así como abajo en la parte de iCustoms, (Ahora las versiones smthd de JRK de los indicadores siguen usando 2 buffers pero tienen una variable extra, 2 en total: "SmoothLength" y "SmoothPhase". "CountBars" fue eliminado) y ¡¡¡Voila!!! Si sólo fuera tan fácil. Hice esas cosas y lo compilé, sin errores/advertencias. Sin embargo, cuando intento hacer un backtest/forward test, no hay operaciones.....
¿Me falta algo? Cualquier consejo será muy apreciado.
¡Bizzzzzump!
Paz a todos,
Espero que todo esté bien con todos.
Mi pregunta es bastante simple para aquellos calificados en el área de programación:
Tengo un EA creado profesionalmente para mí, utilizando 3 indicadores en su estado crudo. Es un sistema de 4 estrategias codificadas en un e.a. donde los 3 indicadores se negocian en diferentes combinaciones. Sólo un poco de historia, pero esta parte es realmente irrelevante.
Los 3 indicadores utilizan dos buffers cada uno y la única variable que tenían era "CountBars". Como estaban en un estado en el que no eran optimizables, siendo que la única opción ajustable era "CountBars", tuve la brillante idea de usar el algoritmo de Jurik como una especie de preprocesamiento. De esta manera podría mantener la crudeza del indicador, es decir, que reaccionara rápidamente pero con varios "contratiempos", y al mismo tiempo añadir un factor de suavización que siguiera siendo muy sensible y, al mismo tiempo, con poco retardo. Así que le pedí a un conocido miembro de este foro que me ayudara con esa parte del proyecto, lo que hicieron y de forma bastante impecable, debo añadir. Sin embargo, debido a que fueron más allá de la llamada del deber, no quise pedirles que me hicieran más favores, es decir, cambiar las nuevas versiones suavizadas de Jurik de los mismos indicadores en lugar de sus subordinados crudos.
Dicho esto, pensé: "¿Qué tan difícil puede ser?" Pensé que sabía lo suficiente como para hacerlo yo mismo. Solo cambie los nombres que son llamados en las 3 instancias de iCustom, agregue las nuevas variables en la parte "externa" así como abajo en la parte de iCustoms, (Ahora las versiones smthd de JRK de los indicadores siguen usando 2 buffers pero tienen una variable extra, 2 en total: "SmoothLength" y "SmoothPhase". "CountBars" fue eliminado) y ¡¡¡Voila!!! Si sólo fuera tan fácil. Hice esas cosas y lo compilé, sin errores/advertencias. Sin embargo, cuando intento hacer un backtest/forward test, no hay operaciones.....
¿Me estoy perdiendo algo? Cualquier consejo será muy apreciado.Hola Ffl,
Prueba con iCustom(NULL,0," nombre del indicador" SmoothLength,SmoothPhase,0,1) para la compra y con iCustom(NULL,0," nombre del indicador" SmoothLength,SmoothPhase,1,1), para la venta sólo cambia el "nombre del indicador" por el indicador que estás intentando llamar.
Hola Ffl, Prueba iCustom(NULL,0," nombre del indicador" SmoothLength,SmoothPhase,0,1) para la compra y iCustom(NULL,0," nombre del indicador" SmoothLength,SmoothPhase,1,1), para la venta solo cambia el "nombre del indicador" por el indicador que estas tratando de llamar.
Paz Sr. T,
Gracias por la orientación. Hice esos cambios basados en su sugerencia y E.A. todavía compila sin errores/advertencias pero también todavía no coloca ninguna operación. Intentaré una solución más en breve .....