Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 172

 
-Aleks-:

Evidentemente, sí, pero ¿dónde se almacenan los datos? Estoy importando las cotizaciones de otro instrumento - futuros Si y necesito eliminar los ceros después del punto decimal allí, ya que no están en Si.

Entonces, empecemos por el otro lado: ¿cómo se importa?
 
YURAZ_CreateCSV_HistoryFile_From_MT5_For_MT4
YURAZ_CreateCSV_HistoryFile_From_MT5_For_MT4
  • votos: 28
  • 2010.12.15
  • Yuriy Zaytsev
  • www.mql5.com
Данный скрипт поможет получить для MetaTrader 4 полную историю без дырок из базы MetaTrader 5.
 
Victor Nikolaev:

Basta con rehacer un poco el guión

En qué dirección hay que volver a trabajar: no hay ceros en la descarga.

¿O sugieres el camino inverso para dividir los enteros?


 
Vitalie Postolache:
De esta manera se puede "corregir" el script para que el archivo final contenga las comillas en el formato correcto, pero si el terminal las mostrará sin la parte fraccionaria, no estoy seguro. Lo más probable es que haya ceros después de la importación en el terminal. Pregúntale al autor del guión.

Eso es lo que estoy diciendo, ¡hay ceros! Por lo demás, todo funciona. Y estos ceros me molestan: las cifras astronómicas en puntos estropean la percepción.
 
-Aleks-:

En qué dirección hay que volver a trabajar: no hay ceros en la descarga.

¿O propones dividir los enteros al revés?


Entonces sólo queda ocultar los precios del gráfico y dibujar tus propios objetos, pero ¿merece la pena? ¿Por qué te molestan los ceros, la estética está mal?
 
Vitalie Postolache:
Entonces sólo queda ocultar los precios del gráfico y dibujar tus propios objetos, pero ¿merece la pena? ¿De qué impiden los ceros, la estética está mal?

Los ceros nos impiden hacer esto porque tenemos que reconfigurar el EA globalmente en aquellos lugares donde se utilizan los puntos - es una pérdida de tiempo.
 
-Aleks-:

Los ceros estorban porque hay que reconfigurar el EA globalmente en los lugares donde se usan los puntos, es una pérdida de tiempo.
Entonces es más fácil cambiar a un A :)
 
Vitalie Postolache:
Entonces es más fácil cambiar a un cinco :)

Es más fácil para unos y difícil para otros - yo tengo un EA de más de 15 líneas, sin contar 8 clases distintas...
 

Una pequeña ayuda para un novato con el código:


Hay un código para bloquear las operaciones:

Código MQL:
void OnTick(void){ double LB=0, LS=0; int b=0,s=0; for(int i=0; i<OrdersTotal(); i++){ if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){ if(OrderSymbol()==Symbol()){ int tip = OrderType(); 
           if (tip==OP_BUY){ LB += OrderLots(); b++; } if (tip==OP_SELL){ LS += OrderLots(); s++;
            }}}} Comment(b," Comprar ",DoubleToStr(LB,2)," lote", "\n",s," Vender ",DoubleToStr(LS,2)," lote"); if (LS<LB){ si(OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),100,0, stoploss, NULL,0,0,CLR_NONE)==-1) Print("Error ",GetLastError()," orden de apertura
   } if (LS>LB){ if(OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),100,0, takeprofit, NULL,0,0,CLR_NONE)==-1) Print("Error ",GetLastError()," order opening "); }
Funciona según el principio de bloqueo de cada operación abierta... Es decir, se abre una operación e inmediatamente la cubre con la contraria y así hasta el infinito...

¡Tengo que hacerlo así! Cuando se abría un trato (o yo mismo lo abría un poco), y si se justificaba, se cerraba de forma segura... Y si no se justificaba, entonces después de un número n (que se puede especificar en los ajustes) el tick abría la cerradura y mantenía esta posición... Es decir, ¿la lógica está clara? Si no, trataré de explicar el punto con más detalle...

Por favor, ayuden a la buena gente.... Estaré muy agradecido