[¡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 206

 

Has perdido... ¡Resulté ser adecuado!

Tienes el BROKO-INVESTOR mt4 instalado. O usted (muy probablemente) confundió el servidor cuando abrió una cuenta demo

Es fácil de ver por los nombres de las monedas. Sólo allí al nombre de las divisas se le añade la terminación _FX.

Lote mínimo = 0,1 y en el MARKET OVERVIEW sólo hay divisas (no hay instrumentos bursátiles)

No seas terco. Vaya al sitio web de Broco y descargue mt4 desde la sección Broco-trader.

O abrir una cuenta de demostración en el servidor 87.239.184.73:443

Pero en este caso, todas las mismas posiciones no se abrirán en línea y el registro dará un error. Por lo tanto, vaya a averiguar cómo abrir una posición de forma programada en 2 pasos.

 

Tengo 10 minutos de tiempo. A continuación le daré un ejemplo de código de cómo abro posiciones en BROKO.

Al final de su código EA (fuera de START) necesita insertar esta función:

//Для  открытие позиций в условиях рыночного
 //                    исполнения торговых заявок 
int WHCOrderSend(string symbol, 
                 int cmd, 
                 double volume, 
                 double price, 
                 int slippage, 
                 double stoploss, 
                 double takeprofit, 
                 string comment, 
                 int magic, 
                 datetime expiration, 
                 color arrow_color)
{
   int ticket = OrderSend( symbol, cmd, volume, price, slippage, 0, 0, comment, 
                                                    magic, expiration, arrow_color);   
   int check = -1;
   if ( ticket > 0 && ( stoploss != 0 || takeprofit != 0)) {
    if (!OrderModify( ticket, price, stoploss, takeprofit, expiration, arrow_color)) {
         check = GetLastError();
     if ( check != ERR_NO_ERROR) {
       Print("OrderModify error: ", ErrorDescription( check));
         }}} else {
      check = GetLastError();
      if ( check != ERR_NO_ERROR){
         Print("OrderSend error: ", ErrorDescription( check));
      }}   return ( ticket);}

 

Los topes en los parámetros externos se ajustarán entonces de la siguiente manera

extern int     Magic = 777;
extern int      StopLoss=90;
extern int      TakeProfit=90;

double SL, TP;
int ticket;
//-- Подключаемые модули --
#include <stderror.mqh>
#include <stdlib.mqh>
//---------------------------------
Y los propios puestos se abren así:
 
//если условия соответсвуют заданным, 
// открывем позицию бай 
SL=0; TP=0;
if( StopLoss>0)   SL=Ask-Point* StopLoss;
if( TakeProfit>0) TP=Ask+Point* TakeProfit;   
ticket= WHCOrderSend(Symbol(),OP_BUY, Lots,Ask,3, SL, TP,"Dayria_02", Magic,0,Blue);
if( ticket < 0) { Print("Ошибка открытия ордера BUY #", GetLastError()); 
               Sleep(10000);   return (0); }
Del mismo modo, para las posiciones de venta:
SL=0; TP=0;
if( StopLoss>0)   SL=Bid+Point* StopLoss;
if( TakeProfit>0) TP=Bid-Point* TakeProfit;   
ticket= WHCOrderSend(Symbol(),OP_SELL, Lots,Bid,3, SL, TP,"Dayria_02", Magic,0,Red);
if( ticket < 0){Print("Ошибка открытия ордера SELL #", GetLastError()); 
                Sleep(10000);   return (0);  }
 

rid, muchas gracias por los comentarios, la verdad es que me he equivocado de servidor. Estoy ordenando el código.

 

No discutas (c) porque es fácil confundirse.



El terminal es de Life y la demo es de otra persona... ;)

Así que la prioridad es el servidor conectado y no el nombre del terminal o de la empresa.

Especialmente si tratas con los paramédicos como si fueran cucarachas... )))

 
kombat >> :

.... Así que es el servidor el que se conecta y no el nombre del terminal o de la empresa.

Especialmente uno en el que los paramédicos se esparcen como cucarachas... )))



Sí, por supuesto.

Pero para los principiantes, a menudo es más fácil descargar una nueva plataforma que introducir un servidor diferente.

 
cdover >> :

rid, muchas gracias por los comentarios, la verdad es que me he equivocado de servidor. Estoy ordenando el código.

Por cierto. En el probador el EA debería funcionar sin función de modificación.

Si necesitas una comprobación rápida de una idea programada, utiliza el probador de mt4 (aquí se describe clara e inteligentemente cómo hacerlo)

Prueba y optimización de los EA

 
rid писал(а) >>

Por cierto. En el probador, el Asesor Experto debería funcionar sin la función de modificación.

Si necesitas una comprobación rápida de una idea programada, utiliza el probador de mt4 (aquí se describe clara e inteligentemente cómo hacerlo)

El probador es una descripción fácil y clara de cómo hacerlo)- 'Probando y optimizando Asesores Expertos'.

Estoy trabajando con el probador y fue realmente extraño, todo funciona y te da los informes de optimización.

 
granit77 >> :

A eso me refería cuando sugería ejecutar el mismo entorno (objetos, indicadores) con y sin la plantilla.

En cuanto a la ralentización de los probadores, para mí es un agujero negro. A veces suceden tales trucos con Asesores Expertos absolutamente inofensivos que uno apenas puede creer, pero todo está bien en el registro. Por lo tanto, no me atreveré a dar ningún consejo, salvo en los casos más sencillos. Me gustaría poder resolverlo yo mismo :))

... Pero qué emoción es descubrir la solución :)

 

¡Buenas tardes!

Por favor, ayúdenme con una pregunta:

Necesito escribir una fórmula para calcular la garantía de un instrumento.

Entiendo cómo extraer el importe total de la garantía, utilizando una fórmula,

Pero, ¿cómo descompongo esta prenda en instrumentos (monedas)?

Al fin y al cabo, sólo hay compra y venta, y hay lotes.

MODE_MARGININIT 29 Margen inicial requerido para 1 lote
MODE_MARGINMAINTENANCE 30 Cantidad de margen requerido para apoyar las posiciones abiertas por 1 lote
MODE_MARGINHEDGED 31 Margen cobrado en posiciones solapadas por 1 lote

Necesito utilizar estas fórmulas, pero no está claro cuál es la diferencia entre ellas y cuándo utilizarlas.

En consecuencia, necesitamos obtener la distribución del importe total del margen para determinados instrumentos.

Es decir, los lotes abiertos de un instrumento utilizan tal o cual cantidad del depósito. otro instrumento utiliza tanto y tanto ... y así sucesivamente.

¿Tal vez alguien tenga alguna idea? Gracias.