[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 208

 

Ayúdame a programar la interpolación y la extrapolación. Intenté resolver ejemplos complicados (como el indicador de extrapolación), pero no pude. He tratado de encontrar algo similar, pero no hay interpolación en ningún sitio, sólo el promedio. La imagen muestra un ejemplo de este tipo de interpolación y extrapolación basado en la transformada de Fourier. ¿Cómo puedo conseguir que una función ENTRE BARRAS se represente no como una línea recta sino, por ejemplo, como un polinomio cúbico o de alguna otra forma (no fundamental)? Al menos ejemplos sencillos, el propio extracto o enlaces, no necesariamente con matemáticas. Gracias.

 
 
OneDepo писал(а) >>

Como opción:

¡Muchas gracias! >> Lo intentaré.

 

Hola.

Cuál puede ser el problema, el Asesor Experto pasa la prueba en el probador en la demo, pero en el probador en la cuenta real falla. Tengo las mismas condiciones.

 
Ponga el EA en tf=m1 y vea lo que dice el registro cuando el EA da señales de entrar.
 

No abre nada en absoluto, inmediatamente después de iniciar la prueba dice lo siguiente (en la imagen)

 

Es decir, parece que carga la zona e inmediatamente la borra. No existe tal cosa en la demo. Por favor, indíqueme cuál es el problema.

 
NTH >> :

Es decir, parece que carga la zona e inmediatamente la borra. No existe tal cosa en la demo. ¿Puede decirme qué pasa?

>> cargar el historial de todas las TFs.

 

Al compilar, da un montón de errores. Ayúdame a resolverlo, yo mismo no veo dónde me he equivocado.

//-----------------------------------------------------------------------------+
// Функция возвращает OrderOpenPrice последнего открытого экспертом рыночного ордера               |
//-----------------------------------------------------------------------------+ 
int Last_Order_Price(int Last_price)
for(int i=OrdersTotal(); i>=0; i--)
  {
   if(OrderSelect( i-1, SELECT_BY_POS)==true)
     {
      if(OrderSymbol()!=Symbol())     continue;
      if(OrderMagicNumber()!=123456)  continue;
      if(OrderType()>1)               continue;
      
      Last_price =OrderOpenPrice();
      return( Last_price);
     }
  }
 

PRUEBE ESTA FUNCIÓN COMO MUESTRA.

//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru/                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает цену открытия последней открытой позиций.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
double PriceOpenLastPos(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=0;
  int      i, k=OrdersTotal();

  if ( sy=="0") sy=Symbol();
  for ( i=0; i< k; i++) {
    if (OrderSelect( i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()== sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if ( op<0 || OrderType()== op) {
            if ( mn<0 || OrderMagicNumber()== mn) {
              if ( t<OrderOpenTime()) {
                t=OrderOpenTime();
                r=OrderOpenPrice();
              }
            }
          }
        }
      }
    }
  }
  return( r);
}