FOREX - Tendencias, previsiones e implicaciones 2016 - página 722

 
Vladimir Zubov:

1. ¿Cómo puedo hacer un nuevo control de velas para que una iteración sea en el primer tick?

Parece que este código funciona para controlar el disparo en la apertura de una vela :(

2. ¿Por qué no, se trata de la función de Kim para determinar la barra de una posición abierta?

P / S Girado MT4 ahora todo de nuevo escribir ...

1.

if(iTime(Symbol(),PERIOD_H1,0)==prevTime) return(0);

datetime prevTime=iTime(Symbol(),PERIOD_H1,0);

Profundice en su código

Y eso es todo....

/Esto es para H1

Ah, sí, el bar está buscando allí. Bueno, entonces funcionará.

Y después de int ticket=OrderSelect() - ¿tiene un análisis - se ha abierto la orden o no? if(ticket<0)GetLastError() - ¿es así?

 
new-rena:

1.

if(iTime(Symbol(),PERIOD_H1,0)==prevTime) return(0);

prevTime=iTime(Symbol(),PERIOD_H1,0);

Profundice en su código

Y eso es todo....

/Esto es para H1

Sí... Tienes que combinar algo, supongo que no usas void OnTick(), me refiero a la sintaxis de 2014 ?
 
Vladimir Zubov:
Sí... Creo que no estás usando void OnTick(), me refiero a la sintaxis de 2014 ?
 
new-rena:

O puedes sustituirla por tu propia versión, una más correcta, tengo problemas con la compilación, creo que tienes paréntesis en Return, pero no lo sé ?

 
//+------------------------------------------------------------------+
//|                                                       Privet.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
// ============= Переменные ==========================================
int      prev_time = 0;     // Работа по ценам открытия свечи
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {//-Start-

// ======= Работа по ценам открытия свечи ============================
  if ( Time[0] <= prev_time ) {return;}
  prev_time = (int)Time[0];

// ========================== My EA ==================================
{


}  

// ========================== EA END =================================

  }//-Start End-

// ================= Функции =========================================  
//+------------------------------------------------------------------+
Это MT4
 
0
Vladimir Zubov:

Sin los paréntesis, antes estaba mal vista la compilación. ¿Por qué "<="? Por el contrario, cuando se iguala "==" lo echamos para atrás. Es decir, si la barra actual, esperamos hasta que el tiempo sea diferente. Y la hora es int, debería ser datetime, ¿no?

int init()   { //---    //---    return(0);   } //+------------------------------------------------------------------+ //| Expert deinitialization function                                 | //+------------------------------------------------------------------+ int deinit()   { //---    return(0);   } //+------------------------------------------------------------------+ //| Expert tick function                                             | //+------------------------------------------------------------------+ int start()

{

return(0);

}

 
new-rena:
0

Sin los paréntesis, antes estaba mal vista la compilación. ¿Por qué "<="? Por el contrario, cuando es igual (==) lo echamos para atrás. Es decir, si la barra actual, esperamos hasta que el tiempo sea diferente. Y la hora es int, creo que siempre fue datetime?

No entré en detalles, en algún lugar de aquí tomé algún libro de texto o artículo, pero fue en 2012 o antes, tal vez ahora es diferente, por eso falla a veces en tiempo real.

P.S. El producto es crudo para el mercado, voy a retirar de la aprobación, un problema extraño no ha notado antes.

Resulta que después de la iteración no he salido en Retorno y puede trabajar de nuevo ?

 
Vladimir Zubov:
No entré en detalles, en algún lugar aquí está sacado de un libro de texto o artículo, pero fue en 2012 o antes, tal vez ahora es diferente, por eso falla a veces en la vida real.

Muy bien, entonces...

¿Por qué no puede funcionar? Ejecútalo en modo visual en el probador - estas cosas saldrán y lo arreglarás una vez. El próximo no será tan molesto.

Tampoco estaría de más pulir la demo después.

 
new-rena:
Muy bien, entonces...
Bueno para mí para el mercado, y así es como siempre bloqueo la vela. ¿Y si la gente pregunta por qué se ha abierto dos veces y yo no lo sé? Eso no es bueno...)
 
new-rena:

Muy bien, entonces...

¿Por qué no puede funcionar? Ejecútalo en modo visual en el probador - estas cosas saldrán y lo arreglarás una vez. La próxima no será tan divertida.

En el probador como siempre todo está bien y tomó hace un año con este código también, pero yo mismo estoy perplejo por qué se abrió dos veces, y si 100 veces ?