[ARCHIVIO] Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 3. - pagina 133

 

TickSave dal compositore perde alcuni tick, e anche quando il server demo si ricollega non crea una nuova cartella e non scrive in quella vecchia

Ancora, qual è il miglior script o Expert Advisor per raccogliere i tick?

 

Dimmi quanti decimali dovrebbe avere la virgola.

Esempio.

Nel terminale il prezzo è 1,44996. Tuttavia, tutte le funzioni restituiscono solo 1,4499 o 1,4450. Ci sono metodi per cercare valori con 5 cifre decimali?

A causa di questo non riesco a capire cosa fare con lo stop loss. Sono stato guidato dal terminale che legge 1.4xxx. E ho messo uno stop loss a 200 punti. Normalmente è posto a 1,40000 - 200 = 1,39800, per esempio.

Tuttavia, logicamente, la funzione restituisce solo 1,4xxx dovrebbe essere 1,4000 - 200 = 1,3800. Cosa sto facendo di sbagliato? =(

 
DoubleToStr
 
sergeev:
DoubleToStr

Oooh.... Grazie.

Quindi c'era un arrotondamento automatico a 4 dopo la virgola.

 
ChAnton:

Oooo.... Grazie.

Quindi c'era un arrotondamento automatico a 4 dopo la virgola.


Se stampato su Print/Comment senza altro testo, sì.

Ma il numero rimane un numero. Quindi non dimenticate di applicare NormalizeDouble quando inviate richieste commerciali

 

Il segmento orizzontale è impostato come segue (sarà a destra di Time[0]):

         datetime Time_TLINE_Left  = Time[0]         + Period()*60*15;
         datetime Time_TLINE_Right = Time_TLINE_Left + Period()*60*10;

         if(ObjectFind("MyLine_Buy")==-1) {
            string       Line_Buy  = "MyLine_Buy";
            ObjectCreate(Line_Buy, OBJ_TREND,  0,  Time_TLINE_Left,Ask,  Time_TLINE_Right,Ask);
            ObjectSet(   Line_Buy, OBJPROP_STYLE, STYLE_SOLID);
            ObjectSet(   Line_Buy, OBJPROP_RAY,   False);
            ObjectSet(   Line_Buy, OBJPROP_WIDTH, 3);
            ObjectSet(   Line_Buy, OBJPROP_BACK , True);
            ObjectSet(   Line_Buy, OBJPROP_COLOR, Color_Only_Buy);
         }

Ad ogni nuova barra il segmento viene cancellato e ridisegnato.

Occasionalmente un giorno dopo il giorno corrente viene saltato (cioè non è sul grafico, ma viene fatto un tentativo di disegnare un segmento per esso) - per esempio nei fine settimana:

Time[0] corrisponde al venerdì, e il segmento viene creato per il sabato, quando non c'è trading.

In questo caso, la logica è rotta.

- Dobbiamo trovare un modo per identificare questi giorni che non esistono, e non disegnare segmenti di linea per loro.

Forse qualcuno ha un'idea su come farlo?

(Controllare il giorno della settimana non copre tutte le opzioni possibili, come le vacanze)

Grazie!

 
chief2000:

Qualcuno ha un'idea di come farlo? (Controllare i giorni della settimana non copre tutte le possibilità)

Abbiamo bisogno di rilevare uno scarto nelle quotazioni, confrontare Time[0] e Time[1] su giorni o così... Se non c'è nessuno scarto, allora disegniamo come al solito, se c'è allora dobbiamo pensare a cosa fare in questo caso.

 
splxgf:

Dobbiamo rilevare uno scarto tra le virgolette, confrontare Time[0] e Time[1]... Se non c'è nessuna lacuna, allora la disegniamo come al solito, se c'è, allora dovremmo pensare a cosa fare in questo caso.

Time[1] è a sinistra di Time[0] e il segmento è disegnato a destra di Time[0] a una certa distanza da esso.

Ho pensato che un segmento disegnato per un giorno inesistente (per esempio sabato) dovrebbe avere alcune proprietà uniche, come un punto. Ma il problema è che questo punto ha il tempo corretto nelle sue proprietà - le coordinate sinistra e destra di questo segmento-punto non hanno lo stesso tempo (per un punto reale il tempo sarebbe lo stesso).

Se fosse possibile trovare qualcosa di specifico, allora sarebbe possibile cancellare semplicemente tale segmento.

 

confronta con Time[1] solo per rilevare le vacanze/il fine settimana.

E perché c'è un tentativo di ridisegno, non ci sono tick, si può controllare che i trade siano chiusi per gli script in loop.

 
splxgf:

confronta con Time[1] solo per rilevare le vacanze/il fine settimana.

E perché c'è un tentativo di ridisegno, non ci sono tick, si può controllare che i trade siano chiusi per gli script in loop.

Il problema si verifica sulla prima barra del primo giorno della settimana di trading - il segmento attraversa Time[0] anche se dovrebbe essere sempre ad una data distanza (fissa) da esso.

All'inizio della settimana, risulta che il tempo della coordinata sinistra del segmento diventa inferiore al tempo di apertura di Time[0].

Forse la tua soluzione di controllare un intervallo tra Time[0] e Time[1] può risolvere il problema ma dovrò sacrificare le prime barre all'inizio della settimana (questo è accettabile). Lo controllerò domani.

Grazie!