Pregunta sobre el código del indicador - (3 líneas)
Pregunta sobre el código del indicador - (3 líneas)

 

Publi

Resultados 1 al 4 de 4

Tema: Pregunta sobre el código del indicador - (3 líneas)

  1. #1
    1. ¿por qué las 2 funciones marcadas están en el deinit?

    2. ¿Por qué 720 de valor en la línea marcada?



    el código:



    Código insertado/ --------------------------------------------- --------------------- /| DailyBreakout.mq4 |/| Copyright © 2008, Robert Hill. |/ ----------------------------------------------- ------------------- #property copyright Copyright © 2008, Robert Hill #property link NONE #property indior_chart_window/---- parámetros de entrada extern bool Alerts = false; extern int GMTshift = 0; extern int LabelShift = 20; extern int LineShift = 40; cadena externa pd = PipsAboveBelowSR for Alert; extern int PipDistance = 1; color externo StandardFontColor = Blanco; extern int StandardFontSize = 8; color externo SupportColor = Rojo; color externo ResistanceColor = Lime; datetime LabelShiftTime, LineShiftTime; double yesterday_high = 0; doble ayer_bajo = 0; doble LastHigh, LastLow, x; doble R1 = 0; doble S1 = 0; bool firstS1 = verdadero; bool firstR1 = verdadero; duplicar myPoint;/ ----------------------------------------------- ------------------- /| Función de inicialización del indicador personalizado |/ ----------------------------------------------- ------------------- int init () {//---- indicadores myPoint = SetPoint (Symbol ());/---- return (0); }/ ---------------------------------------------- -------------------- /| Función de desinicialización del indicador Custor |/ ----------------------------------------------- ------------------- int deinit () {//---- TODO: agregue su código aquí/---- ObjectDelete (Etiqueta R1); ObjectDelete (línea R1); ObjectDelete (etiqueta S1); ObjectDelete (línea S1); return (0); } double SetPoint (string mySymbol)/lt; lt; lt; lt; lt; lt; ----- ¿por qué aquí en el deinit ????? ------------ ---- {double mPoint, myDigits; myDigits = MarketInfo (mySymbol, MODE_DIGITS); if (myDigits lt; 4) mPoint = 0.01; else mPoint = 0.0001; return (mPoint); } int DoAlerts ()/lt; lt; lt; lt; lt; lt; lt; ------- por qué aquí en el deint ?????? ------- ---------- {doble DifAboveR1, PipsLimit; doble DifBelowS1; DifBelowS1 = S1 - Cierre # 91; 0 # 93 ;; DifAboveR1 = Cerrar # 91; 0 # 93; - R1; PipsLimit = PipDistance * myPoint; if (DifBelowS1 gt; PipsLimit) firstS1 = verdadero; if (DifBelowS1 lt; = PipsLimit DifBelowS1 gt; 0) {if (firstS1) {Alerta (debajo de S1 Line by, DifBelowS1, for, Symbol (), -, Period ()); PlaySound (alert.wav); firstS1 = falso; }} if (DifAboveR1 gt; PipsLimit) firstR1 = true; if (DifAboveR1 lt; = PipsLimit DifAboveR1 gt; 0) {if (firstR1) {Alert (Por encima de R1 Line by, DifAboveR1, for, Symbol (), -, Period ()); Sueño (2000); PlaySound (timeout.wav); firstR1 = falso; }}}/ -------------------------------------------- ---------------------- /| Función de iteración del indicador personalizado|/ ----------------------------------------------- ------------------- int start () {int counted_bars = IndiorCounted ();/---- TODO: agregue su código aquí double day_high = 0; doble day_low = 0; double yesterday_open = 0; double today_open = 0; doble cur_day = 0; doble prev_day = 0; int cnt = 720;/lt; lt; lt; lt; lt; ---- ¿por qué 720 ???????? ------------------- -------------------------------/exit si el período es mayor a 4 hrs si if (Period ( ) gt; 240) {Imprimir (Error - El período del gráfico es mayor a 4 horas); return (-1);/luego salir}/---- Obtener nuevos precios diarios calcular pivots cur_day = 0; prev_day = 0;/---- Obtenga precios diarios nuevos para calcular pivotes mientras (cnt! = 0) {cur_day = TimeDay (Time # 91; cnt # 93; - (GMTshift * 3600)); if (prev_day! = cur_day) {yesterday_high = day_high; yesterday_low = day_low; day_high = High # 91; cnt # 93 ;; day_low = Low # 91; cnt # 93 ;; prev_day = cur_day; } if (High # 91; cnt # 93; gt; day_high) {day_high = High # 91; cnt # 93 ;; } if (Low # 91; cnt # 93; lt; day_low) {day_low = Low # 91; cnt # 93 ;; } cnt--; } S1 = ayer_bajo; R1 = ayer_alto; LabelShiftTime = Time # 91; LabelShift # 93 ;; LineShiftTime = Time # 91; LineShift # 93 ;;/---- Establecer las etiquetas de línea en la ventana del gráfico DisplayLabel (etiqueta R1, R1, R1, StandardFontSize, StandardFontColor); DisplayLabel (etiqueta S1, S1, S1, StandardFontSize, StandardFontColor);/--- Dibujar líneas Pivot en el gráfico DisplayLine (línea S1, S1, 0, STYLE_DASHDOTDOT, SupportColor); DisplayLine (línea R1, R1, 0, STYLE_DASHDOTDOT, ResistanceColor);/---- done/Ahora comprueba si Alert (Alertas) DoAlerts ();/---- return (0); }/---- Establecer etiquetas de línea en la ventana del gráfico void DisplayLabel (string LabelName, string LabelText, double LabelPos, int LabelFontSize, color LabelColor) {if (ObjectFind (LabelName)! = 0) {ObjectCreate (LabelName, OBJ_TEXT, 0 , LabelShiftTime, LabelPos); ObjectSetText (LabelName, LabelText, LabelFontSize, Arial, LabelColor); } else {ObjectMove (LabelName, 0, LabelShiftTime, LabelPos); }}/--- Dibujar líneas de Pivot en el gráfico void DisplayLine (string LineName, double LinePos, int LineWidth, int LineStyle, color LineColor) {if (ObjectFind (LineName)! = 0) {ObjectCreate (LineName, OBJ_HLINE, 0, LineShiftTime, LinePos); ObjectSet (LineName, OBJPROP_STYLE, LineStyle); ObjectSet (LineName, OBJPROP_COLOR, LineColor); if (LineWidth gt; 0) ObjectSet (LineName, OBJPROP_WIDTH, LineWidth); } else {ObjectMove (LineName, 0, LineShiftTime, LinePos); }}/ --------------------------------------------- ---------------------

    muchas gracias .

  2.                         
    Publicidad
  3. #2

    Cita Iniciado por ;
    gracias un botín para su repetición rápida. ¿Por qué 12 horas y no vamos a ver 24 (más probable) No entiendo este.
    No puedo responder eso sin mirar el código en detalle para ver qué está haciendo y no tengo tiempo, pero no me parece muy eficiente en esa área, parece que está haciendo 720 iteraciones de esa pieza de codifique cada tic para los datos que son estáticos

  4. #3
    gracias un botín para su repetición rápida. ¿Por qué 12 horas y no vamos a ver 24 (más probable) No entiendo este.

  5. #4

    Cita Iniciado por ;
    1. ¿por qué las 2 funciones marcadas están en el deinit? 2. ¿Por qué 720 de valor en la línea marcada? el código: gracias un botín.
    1. no están en la definición de que el deinit está encerrado por {} están fuera de él. 2. 720 es 12 horas de minutos.

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •  
Uso de cookies
Utilizamos cookies propias y de terceros para elaborar información estadística y mostrarle publicidad personalizada a través del análisis de su navegación. Si continúa navegando acepta su uso. Más información y política de cookies.
     

Aviso legal: Ni forosforex.com ni ninguna persona involucrada en forosforex.com aceptarán ninguna responsabilidad por cualquier pérdida o daño en el trading como resultado de la confianza en la información contenida en este sitio web, incluidos datos, cotizaciones, gráficos y señales de compra/venta. Por favor, infórmese plenamente de los riesgos y costes asociados a las operaciones en los mercados financieros, una de las formas de inversión que más riesgos entrañan.
forosforex.com le quiere recordar que los datos contenidos en este sitio web no son necesariamente en tiempo real ni exactos. forosforex.com no asume responsabilidad alguna por las pérdidas en que usted podría incurrir como resultado de la utilización de estos datos. Este acuerdo se rige por su versión en inglés, que prevalecerá siempre que haya alguna discrepancia entre la versión en inglés y la versión en español. Los CFD son un producto difícil de entender, varios organismos reguladores consideran que no es adecuado para inversores minoristas debido a su complejidad y riesgo.
Advertencia de riesgo: Los CFDs son un producto difícil de entender, y puede no ser adecuado para inversores minoristas debido a su complejidad y riesgo. Existe la posibilidad de sufrir una pérdida igual o superior a la inversión. Por lo tanto, no debe invertir o arriesgar dinero que no pueda permitirse perder. Debe asegurarse de que comprende todos los riesgos. Antes de abrir una cuenta en un broker por favor sea consciente e infórmese de los riesgos asociados con el trading. El contenido de este sitio web no debe interpretarse como asesoramiento personal. ForosForex recomienda que busque el consejo de un asesor financiero independiente.