[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 104
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
Queridos programadores
Ayuda, por favor. El indicador dibuja valores en una divergencia latente alcista, y no dibuja una latente bajista.... Escribe, que el error 4002 - índice de matriz - fuera de rango.
Parece que he arreglado todo... Me llevó toda una tarde... Y es una pena - el código es el más simple... Pero está dibujando toros con flechas, pero no osos... ¡POR FAVOR! ¿Cuál es el error en ?????????????????????
//+------------------------------------------------------------------+
//| div zz 5.mq4 ||
//+------------------------------------------------------------------+
#propiedad ventana_del_gráfica_del_indicador
#property indicator_buffers 4
#property indicator_color1 CLR_NONE
#property indicator_color2 CLR_NONE
#property indicator_color3 BlueViolet
#property indicator_color4 Rojo
#define flechasDesplazamiento 0.0001
doble cci[];
doble cci1[];
double bullishDivergence[];
double bullishDivergence[];
//+------------------------------------------------------------------+
//| Función de inicialización de indicadores personalizada |
//+------------------------------------------------------------------+
int init()
{
//---- indicadores
SetIndexStyle(0, DRAW_NONE);
SetIndexStyle(1, DRAW_NONE);
SetIndexStyle(2, DRAW_ARROW);
SetIndexStyle(3, DRAW_ARROW);
SetIndexBuffer(0, cci);
SetIndexBuffer(1, cci1);
SetIndexBuffer(2, bullishDivergence);
SetIndexBuffer(3, bullishDivergence);
SetIndexArrow(2, 233);
SetIndexArrow(3, 234);
return(0);
}
//+------------------------------------------------------------------+
//| Función de desinicialización del indicador Custor |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Función de iteración de indicadores personalizada |
//+------------------------------------------------------------------+
int inicio()
{
int barras_contadas=IndicadorContado();
//---- la última barra contada se volverá a contar
if(counted_bars>0) counted_bars--;
//int limit=Barras_contabilizadas;
doble vpadcci[];
doble v[];
doble hh[];
doble ss[];
for (int i=500; i>=0; i--)
{
cci[i] = iCustom(NULL, 0, "CCI-OnArray_", 9, 3, 5, 25, 1, i);
si (
(cci[i]<cci[i-1])&&
(cci[i]<cci[i-2])&&
(cci[i]<cci[i+1])&&
(cci[i]<cci[i+2])
)
{
vpadcci[i]=cci[i];
ss[i]=Low[i];
}
}
for(int j=500; j>0; j--)
{
cci[j] = iCustom(NULL, 0, "CCI-OnArray_", 9, 3, 5, 25, 1, j);
si (
((cci[j+1]>vpadcci[10])&&
(cci[j]<vpadcci[10])&&
(low[j]>ss[10])) |||
((cci[j+1]>vpadcci[9])&&
(cci[j]<vpadcci[9])&&
(low[j]>ss[9])) |||
((cci[j+1]>vpadcci[8])&&
(cci[j]<vpadcci[8])&&
(low[j]>ss[8])) |||
((cci[j+1]>vpadcci[7])&&
(cci[j]<vpadcci[7])&&
(low[j]>ss[7])) |||
((cci[j+1]>vpadcci[6])&&
(cci[j]<vpadcci[6])&&
(low[j]>ss[6])) |||
((cci[j+1]>vpadcci[5])&&
(cci[j]<vpadcci[5])&&
(low[j]>ss[5])) |||
((cci[j+1]>vpadcci[4])&&
(cci[j]<vpadcci[4])&&
(low[j]>ss[4])) |||
((cci[j+1]>vpadcci[3])&&
(cci[j]<vpadcci[3])&&
(low[j]>ss[3])) |||
((cci[j+1]>vpadcci[2])&&
(cci[j]<vpadcci[2])&&
(low[j]>ss[2])) |||
((cci[j+1]>vpadcci[1])&&
(cci[j]<vpadcci[1])&&
(low[j]>ss[1])) |||
((cci[j+1]>vpadcci[0])&&
(cci[j]<vpadcci[0])&&
(low[j]>ss[0])
)
{ bullishDivergence[j] = Low[j] - arrowsDisplacement;
}
}
for (i=1; i<500; i++)
{
cci1[i] = iCustom(NULL, 0, "CCI-OnArray_", 9, 3, 5, 25, 1, i);
si
(
(cci1[i]>cci1[i-1])&&
(cci1[i]>cci1[i-2])&&
(cci1[i]>cci1[i+1])&&
(cci1[i]>cci1[i+2])
)
{
v[i]=cci1[i];
hh[i]=Alto[i];
}
}
for(j=1; j<500; j++)
{
cci1[j] = iCustom(NULL, 0, "CCI-OnArray_", 9, 3, 5, 25, 1, j);
si (
((cci1[j+1]<v[10])&&
(cci1[j]>v[10])&&
(alto[j]<hh[10])) |||
((cci1[j+1]<v[9])&&
(cci1[j]>v[9])&&
(alto[j]<hh[9])) |||
((cci1[j+1]<v[8])&&
(cci1[j]>v[8])&&
(alto[j]<hh[8])) |||
((cci1[j+1]<v[7])&&
(cci1[j]>v[7])&&
(alto[j]<hh[7])) |||
((cci1[j+1]<v[6])&&
(cci1[j]>v[6])&&
(alto[j]<hh[6])) |||
((cci1[j+1]<v[5])&&
(cci1[j]>v[5])&&
(alto[j]<hh[5])
)
{ { cci1[j]= Alto[j] + flechasDesplazamiento;
}
}
return(0);
}
KoDim 14.02.2011 09:29
Hola.
Mientras programaba el Asesor Experto, estaba perplejo por el parámetro ma_shift- desplazamiento de la línea media en las barras. Si el desplazamiento es positivo, la línea se desplaza hacia la derecha. Y viceversa, si el desplazamiento es negativo, la línea se desplaza hacia la izquierda.
Si se utiliza un valor positivo, se abre una orden al cruzar las medias.
Sin embargo, si ponemos el parámetro en negativo, la orden no se abre.
¿Qué tiene esto que ver?
Este es un extracto del código
Hola, hace tiempo que intento aprender a escribir EAs, así que aquí va una pregunta. ¿Cómo puedo prescribir el EA para poner un stop loss después de poner un stop buy o un stop loss? Es decir, después de la parada de compra y la parada se sentó durante 5 puntos (más o menos hablando), el EA inmediatamente se puso un stop loss.
¿Es posible crear un EA que cierre todas las órdenes cuando se active el take-profit de la última orden abierta?
Puedes hacerlo.
Pupersa ,busca esta orden y cambia el parámetro "stop loss".
KoDim, ¿quizás porque los valores están desplazados a la izquierda, en las barras de la derecha (cruce en el que se puede comprobar) no existen en absoluto?
pregunta a los programadores: ¿cómo hacer que el número después del punto decimal sea un entero?)
por ejemplo, el número 1,128 necesita 128, el número 1,12 necesita 12, el número 1,2 necesita 2)
El número es una variable externa.
pregunta a los programadores: ¿cómo hacer que el número después del punto decimal sea un entero?)
Por ejemplo, el número 1,128 necesita 128, el número 1,12 necesita 12, el número 1,2 necesita 2)
El número es una variable externa.
ver aquí: https://docs.mql4.com/ru/basis/operations/math
Si el dinero y los volúmenes (y no las ondas de Elliott) actúan en el mercado, y el movimiento de los precios no es caótico, sino impulsado por los volúmenes, entonces dos señales en 2 pares (de los tres considerados) darán una señal más fuerte en el tercer par. Busque los niveles de acumulación de órdenes, analice el VSA y encontrará las X e Y necesarias)))
Además (véase la figura), un claro plano de un par de divisas (formado por 2 divisas) no impide que un tercer par de divisas (los 2 pares restantes) tenga tendencia. Si hay una tendencia de más de una moneda, se crea una especie de "caos de mercado". Dado que las tendencias intradía son menos estables que las de medio y largo plazo, este caos es más pronunciado en los pequeños TF.
Estudiando el mercado desde esta perspectiva, tiendo a pensar que la tendencia de las propias divisas (y no de los pares de divisas) es más estable, ya que de lo contrario obtendríamos un gráfico de osciladores que no se puede analizar en absoluto.
Eso es lo que me dice esta foto. ))))
pregunta a los programadores: ¿cómo hacer que el número después del punto decimal sea un entero?)
Por ejemplo, el número 1,128 necesita 128, el número 1,12 necesita 12, el número 1,2 necesita 2)
El número es una variable externa.