¿Cómo dibujar una caja en MT4?

 

Publi

Página 1 de 404 123 ... ÚltimoÚltimo
Resultados 1 al 10 de 34

Tema: ¿Cómo dibujar una caja en MT4?

  1. #1
    Obvio novato de MT4 aquí. .

    Quería saber si existe una mejor práctica para dibujar un barco en MT4 para automatizar operaciones de ruptura.

    Cualquier ayuda muy apreciada.

    Hal

  2. #2
    Ps.: EA no son perfectos, son varios errores, como Close. Si usa Close[x] o un indicador que usa el precio de cierre en la barra actual, tendrá datos no válidos... ¿Por qué? En EA, la publicación actual no tiene un valor de cierre solo el de apertura, por lo que si usa RSI por ejemplo, RSI [0] no ofrecerá un buen valor hasta RSI [1], ya que RSI usa PRICE_CLOSE para calcular su contenido. ... Así que EA es genial, pero para ayudarnos a especificar egie, tiene que probarse en vivo...

  3. #3
    Se debe tener cierta precaución:
    Cita Iniciado por ;
    Hice lo que me indicó y edité el CI Compilado sin ningún error y cuando lo implementé en el gráfico, noté que imita de manera idéntica al RSI (21) en el que me estoy ejecutando. exactamente el mismo gráfico. Esto es exactamente lo que pude entender mucho: Para obtener un CI, todo esto: #indicador_propiedad_ventana_separada #indicador_propiedad_buffers 1 #indicador_propiedad_color1 Crimson se aplica a esto: double ExtMapBuffer1[];
    Incorrecto (bueno, solo para no dejarlo perplejo): #property indicador_separate_window lt;- Es donde el CI será #property indicador_buffers 1 lt;- Simplemente diga cuánto búfer hay Porque en algún momento tendrá más búfer pero solo 1 o 2 para dibujar... #indicador de propiedad_color1 Crimson lt;- Informe a la API para que use rojo para el búfer de primera línea
    Cita Iniciado por ;
    this: extern int MyPeriod = 21; es solo una variable externa. (Entiendo lo que es una variable. Topical lo hace para que pueda configurarlo en la pequeña GUI cuando se inicia). Esto aquí: int init() SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); retorno(0); Esto indica lo que se atraerá gráficamente y se encuentra en la sección ”ejecutar 1 vez en el inicio”. En este caso, dibuje una línea que comience en 0 y use el siguiente búfer para dibujarse a sí mismo [ buffer = (a partir de 0 será el valor de ExtMapBuffer1) ]
    Incorrecto: SetIndexBuffer(0,ExtMapBuffer1);lt;- 0 es solo para dibujar el primer búfer, 1 es el segundo para dibujar (en estocástico, tiene 0,1 debido a la línea 2) SetIndexStyle(0,DRAW_LINE);lt;- DRAW_LINE se aplicará al búfer caracterizado by 0 so ExtMapBuffer1
    Cita Iniciado por ;
    for(int x=limit; x gt;=0; x)* For ( anuncia el entero “x” que contrasta “limit” y “x” es mayor o igual a cero, reducción ”x” por uno). ¿Esto hace que la mierda comience en 0 y se extienda hacia atrás en uno cada vez? (?) */
    Se extiende de izquierda a derecha: por lo tanto, la última barra (Más antigua) en la última (0: Actual)

  4. #4
    He seguido trabajando en esto y su sentido! ¡Escribí mi primer EA y creo que le di mucha suerte a los principiantes! Muchas gracias por tus instrucciones que son geniales! No lo podría haber hecho sin ti. Sé que este es el comienzo de un largo viaje. No espero milagros de inmediato. ¡Pero hoy estoy probando mi rareza de carácter y hasta ahora funciona excelente! (en la cuenta de demostración de FXDD) Lo llamo una rareza de carácter porque alguien con tan poca experiencia en MQL4 no debería tener la capacidad de escribir algo que realmente funcione tan bien en las pruebas avanzadas. 180 pips en las últimas 24 horas. De las pruebas de FWD en demostración (suerte para principiantes, es solo un día). http://www.venexys.com/HP002A2_FWD_DET_TEST_DAY001.gif
    http://www.venexys.com/HP002A2_FWD_TEST_RESULTS.htmhttp://www.venexys.com/HP002A2_FWD_TEST_RESULTS.htm

  5. #5
    Hice lo que me indicó y edité el CI Compilado sin errores y cuando lo implementé en el gráfico, descubrí que imita de manera idéntica al RSI (21) que tengo funcionando exactamente en el gráfico idéntico. Esto es exactamente lo que pude entender mucho: Para un CI, todo esto: #indicador_de_propiedad_ventana_separada #indicador_de_propiedad_buffers 1 #indicador_de propiedad_color1 Crimson se emplea para: dual ExtMapBuffer1[]; y también esto: extern int MyPeriod = 21; es simplemente un factor externo. (Entiendo lo que es un factor. Topical lo causa para que pueda configurarlo en la GUI pequeña cuando se inicia). Esto: int init() SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); retorno(0); Esto dice lo que se dibujará gráficamente y está en la sección ”ejecutar 1 vez al inicio”. En casos como este, dibuje una línea que comience en 0 y utilice el siguiente búfer para dibujarse a sí mismo [búfer = (comenzando desde 0 será el valor de ExtMapBuffer1)] Posteriormente, continuamos hasta la parte de ”principio” de el script y aquí tenemos.... Int start() { int limit = Bars-IndicatorCounted();*Declarar una constante entera que es igual al resultado de (Número de barras en el gráfico dependiente MENOS la cantidad de barras que no se modificaron después de que se lanzó el indicador) */for(int x=limit; x gt;=0; x-- )* Para (anuncie el número entero ”x” que es igual a ”límite” y ”x” es mayor o igual a cero, la reducción de ”x” en 1) ¿Puede esto hacer que la mierda comience en 0 y se extienda hacia atrás en uno cada tiempo. (?) */ExtMapBuffer1[x]=iRSI(NULL,0,MyPeriod,PRICE_CLOSE,x);* ExtMapBuffer1[x] es igual a iRSI(...,x) */Estoy repasando cada línea de código lentamente para entenderlo bien y cambiar el indicador, el color, los búferes, etc., según lo aconseja. Está empezando a hundirse lentamente. Estoy seguro de que tendré más preguntas en breve. Esa es la explicación más detallada que cualquiera puede pedir. Estoy agradecido de que te hayas tomado el tiempo de describir estos detalles mundanos a tu novato. Fantástico karma para ti! ¡Gracias de nuevo hombre! Hal

  6. #6
    Ahora bajo doble ExtMapBuffer1[]; Insertar extern int MyPeriod = 21; extern se usa para socializar con el indicador, cuando instala el CI tiene una ventana emergente, luego en la pestaña de entrada ve su variable externa... Ahora sustituya el ExtMapBuffer1[x]=1; juntos: ExtMapBuffer1[x]= iRSI(NULL,0,MyPeriod,PRICE_CLOSE,x); elimine: #indicador de propiedad_mínimo 0 #indicador de propiedad_máximo 2 Y optimice... Si no encuentra nada. Está bien. Quita el indicador y vuelve a colocarlo... La escala no cambia cuando compilas. Porque el valor RSI no se ajusta entre 0 y 2... Aquí tienes... Ahora tienes tu básico... Intento para modificar el valor, agregar búfer, cambiar de color, usar otro indicador (en lugar de RSI, usar iCCI), todo lo que necesita saber está ahí para comenzar... Después verá... si tiene otra pregunta, continúe... :--RRB- Felices fiestas

  7. #7
    1 Adjunto(s) ¡Hola! ¡funcionó! Tengo mi línea roja que era apartamento. Hay una gran cantidad de sustancia en esta última publicación para que la digiera. Lo repasaré varias veces para saber bien todo lo que está pasando. Gracias por tomarse el tiempo para hacer este chico. Los mercados están cerrados y las vacaciones están sobre nosotros. ¡Espero que el tuyo y que tengas unas excelentes vacaciones y feliz año nuevo! Hal
    https://www.forexycfds.com/attachmen...1210488381.mq4

  8. #8
    Bueno. Así que reanude Init lt;- la aplicación realizará esta función solo una vez (cuando el indicador esté cargado) deInit lt;- la aplicación realizará esta función solo una vez (cuando el indicador esté descargado) Start lt;- la aplicación ejecutará esta función siempre que el obtiene información del servidor. Ahora, ¿cuál es el indicador de hábito? Para hacerlo breve. La razón principal es crear un indicador personalizado (CI de ahora en adelante) sería colocar una noción de forma gráfica (y sí, puede hacer más, sonar, exportar, leer/escribir documentos, alertar, etc.). Pero antes ... CI usa Array (O búfer o tabla). ¿Qué son exactamente? Debe saber qué es una variable (si no es así, lea al respecto). Imagen que le gustaría declarar 100 variables (variable1, varaiable2, etc.) . Tomará mucho tiempo y esfuerzo hacer esto... Entonces Array son solo factores múltiples unidos bajo un nombre (Nuevamente, es más que eso, pero por ahora es suficiente). Imagen de 100 cajas una al lado de la otra. El primero es el 0, el 1, luego el dos, etc.. . (La matriz comienza en 0 (tamaño de la matriz) -1) Si desea obtener/escribir el valor del cuadro n.° 5, utilice el cuadro [4] (Box[BoxSize-1]) Normalmente, puede definir el tamaño de este búfer cuando tu lo declaras ¡Ya que la aplicación no sabe el tamaño que quieres! ___ Para hacer una breve historia: la aplicación debe asignar, en memoria, el espacio necesario del búfer (ej.: int buffer[2]=1,2; creará dos espacios de tipo int en memoria). Cuando declaras una variable (evaluación int
    , la aplicación asignará automáticamente 1 área de tipo 'int' para obtener la información. (Además, puede expandir o retraer el búfer de su código: pero por el momento olvídese de eso). ___ CI revela la imagen. Debe utilizar un búfer para lograrlo. El búfer que le diga que utilice será utilizado por CI. Hay un máximo de 8 búfer para usar con el indicador (pero puede usar muchas mesas de comedor, lo verá más adelante). Cada caja (para hacer una explicación de muestra) equivale a 1 vela en la imagen. El búfer [0] está alineado con la vela n.° 0, etc. Comenzando de derecha a izquierda (del más reciente al más antiguo) La línea se dibuja de un cuadro a otro: si tiene 10 en el cuadro [0] y 5 en la casilla[1], la línea va de derecha a izquierda, del 10 al 5(On-line). Para la primera demostración, solo colocamos 1 como el valor del indicador (línea plana). Aquí vamos: Primero colocamos la '#propiedad', propiedad del CI #propiedad indicador_ventana_separada #propiedad indicador_mínimo 0 #propiedad indicador_máximo dos #propiedad indicador_buffers 1 #propiedad indicador_color1 Crimson 'indicador_mínimo' e 'indicador_máximo' definirán la escala (valores en la derecha de este CI). Si elimina 'indicator_minimum' e 'indicator_maximum', le proporciona un valor bajo desde y el alto para escalarlo. (con solo 1 porque el valor es como su demostración si no coloca min/max no verá la línea plana) 'indicator_buffers' se usará para decirle al programa cuánto búfer usaremos para generar gráficos (cuántas líneas queremos: máximo 8). 'indicator_color1' es simple, es informar el color que le gustaría para sus líneas personalmente. Debajo de todas las '#propiedades' colocas double ExtMapBuffer1[]; 'ExtMapBuffer1' es el título predeterminado establecido por el asistente, pero cámbielo cada vez; Digamos Buffer[]; En este caso, no es necesario decir cuánto espacio queremos (Buffer[x]
    , porque se hará en la función 'Init'; Desde la función init colocas: SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); 'SetIndexStyle' se usa para definir el tipo de gráficos (línea, histograma, etc.) 0 significa el búfer inicial que inicializa, elegirá el 'indicator_color1', y #1 utilizará' indicador_color2', etc. para asociar el color... El orden en que coloque el búfer no es tan importante, pero los dibujará uno tras otro, por lo que probablemente 0 estará debajo de 1, por lo que probablemente dos estarán junto con 1, etc. ,. ¡Ahora imagine un MACD, si la línea MACD está detrás del histograma! Es solo una cuestión de visibilidad. (Pero debe ser de 0 a x) 'SetIndexBuffer' asocia 'ExtMapBuffer1' a 0 y aplica esto para identificar el búfer y usarlo para pintar la línea en el CI. Eso es todo. Tienes tu declaración base... Ahora usémosla... Poner desde la función 'start': int limit = Bars-IndicatorCounted(); for(int x=limitación; x gt;=0; x--) ExtMapBuffer1[x]=1; Listo... Para cualquier información sobre la función o material adicional. Haz doble clic y luego 'F1' Pruébalo... y dime si funciona... tendrás tu línea plana...

  9. #9
    Necesitaba leerlo un par de veces, pero creo que lo sé en este momento. Siéntase libre de continuar a voluntad.

  10. #10
    Por cierto, notifícame una vez que leas y entiendas. Así que puedo continuar... Esperaré hasta seguir y seguir y seguir y seguir....

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Cookies
Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede cambiar la configuración u obtener más información y política de cookies aquí.