Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 172

 
-Aleks-:

Ovviamente lo fanno, ma dove sono conservati i dati! Sto importando le quotazioni di un altro strumento - Si futures e ho bisogno di rimuovere gli zeri dopo il punto decimale, perché non sono in Si.

Allora cominciamo dall'altro lato: come si importa?
 
YURAZ_CreateCSV_HistoryFile_From_MT5_For_MT4
YURAZ_CreateCSV_HistoryFile_From_MT5_For_MT4
  • voti: 28
  • 2010.12.15
  • Yuriy Zaytsev
  • www.mql5.com
Данный скрипт поможет получить для MetaTrader 4 полную историю без дырок из базы MetaTrader 5.
 
Victor Nikolaev:

È sufficiente rielaborare un po' lo script

Quale direzione rielaborare - non ci sono zeri nello scarico.

Oppure, stai suggerendo il contrario per dividere gli interi?


 
Vitalie Postolache:
In questo modo lo script può essere "corretto" in modo che il file finale contenga le virgolette nel formato giusto, ma se il terminale le visualizzerà senza la parte frazionaria, non sono sicuro. Molto probabilmente, ci saranno degli zeri dopo l'importazione nel terminale. Chiedete all'autore della sceneggiatura.

È quello che sto dicendo, ci sono degli zeri! Per il resto, tutto funziona. E questi zeri mi danno fastidio - numeri astronomici in punti rovinano la percezione.
 
-Aleks-:

Quale direzione rielaborare - non ci sono zeri nello scarico.

Oppure, proponi di dividere gli interi al contrario?


Allora non resta che nascondere i prezzi del grafico e disegnare i propri oggetti, ma ne vale la pena? Perché gli zeri ti danno fastidio, l'estetica è sbagliata?
 
Vitalie Postolache:
Allora non resta che nascondere i prezzi del grafico e disegnare i propri oggetti, ma ne vale la pena? Cosa impediscono gli zeri, l'estetica è sbagliata?

Gli zeri ci impediscono di fare questo perché dobbiamo riconfigurare l'EA globalmente in quei posti dove i punti sono usati - è una perdita di tempo.
 
-Aleks-:

Gli zeri sono d'intralcio perché bisogna riconfigurare l'EA globalmente nei luoghi in cui si usano i punti - è una perdita di tempo.
È più facile passare a una A allora :)
 
Vitalie Postolache:
È più facile passare a un cinque allora :)

È più facile per alcuni e difficile per altri - ho un EA di più di 15 linee, senza contare 8 classi separate...
 

Un piccolo aiuto per un principiante con il codice:


C'è un codice per bloccare gli scambi:

Codice 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," Buy ",DoubleToStr(LB,2)," lot", "\n",s," Sell ",DoubleToStr(LS,2)," lot"); se (LS<LB){ se(OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),100,0, stoploss, NULL,0,0,CLR_NONE)==-1) Print("Error ",GetLastError()," order opening
   } 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 "); }
Funziona sul principio di bloccare ogni trade aperto... cioè, si apre un trade e lo si copre immediatamente con quello opposto e così via all'infinito...

Devo farlo in questo modo! Quando un affare è stato aperto (o l'ho aperto io stesso), e se ha avuto successo, è stato chiuso in modo sicuro... E se non è stato giustificato, allora dopo l'ennesimo numero (che può essere specificato nelle impostazioni) il tick ha aperto la serratura e tenuto questa posizione... Voglio dire, la logica è chiara? In caso contrario, cercherò di spiegare il punto in modo più dettagliato...

Per favore aiutate la brava gente.... vi sarò molto grato