Aiuto per la codifica - pagina 65

 

Ecco una funzione che controllerà i tempi di apertura degli ordini e restituirà il prezzo di quello con il tempo di apertura più recente (se non ci sono stati ordini precedenti, restituirà 0)

double lastOrderOpenPrice(int magicNumber=0)

{

datetime lastTime = 0;

double lastPrice = 0;

for(int i=OrdersTotal()-1; i>=0; i--)

{

if (OrderSelect(i,SELECT_BY_POS, MODE_TRADES)==false) break;

if (magicNumber!=0)

if (OrderMagicNumber() != magicNumber) continue;

if (OrderSymbol() != Symbol()) continue;

if (OrderOpenTime() <= lastTime) continue;

lastTime = OrderOpenTime();

lastPrice = OrderOpenPrice();

}

if (lastTime==0)

for(i=OrdersHistoryTotal()-1; i>=0; i--)

{

if (OrderSelect(i,SELECT_BY_POS, MODE_HISTORY)==false) break;

if (magicNumber!=0)

if (OrderMagicNumber() != magicNumber) continue;

if (OrderSymbol() != Symbol()) continue;

if (OrderOpenTime() <= lastTime) continue;

lastTime = OrderOpenTime();

lastPrice = OrderOpenPrice();

}

return(lastPrice);

}

[/PHP]

The assumtion is that currently open orders have times more recent than the already closed orders. If you wish to avoid that assumption, comment out this line :

[PHP] if (lastTime==0)

dasio:
Ciao,

Ho bisogno di una funzione doppia che mi restituisca l'orderopenprice() dell'ultimo ordine aperto.

Qualcuno può aiutarmi?

grazie
 

Salve,

io uso questo codice per calcolare i lotti. A volte ricevo l'errore 131. Il codice è ok?

double Lotti1(double StopLoss,double Rischio_per_trade){

double MyLots,AllowedLots,MaxLots,MinLot,StopValue,TickValue;

int RightLots;

AllowedLots=(AccountFreeMargin()* Rischio_per_trade/100);

if (Digits==2 || Digits==4)

TickValue=MarketInfo(Symbol(),MODE_TICKVALUE)/10;

else

TickValue=MarketInfo(Symbol(),MODE_TICKVALUE);

StopValue=StopLoss*TickValue;

MinLot=MarketInfo(Symbol(),MODE_MINLOT);

MaxLots=MarketInfo(Symbol(),MODE_MAXLOT);

RightLots=MathRound(AllowedLots/StopValue);

double soldi_ora = AccountBalance()/100;

MyLots = soldi_ora*(Rischio_per_trade/10);

MyLots = NormalizeDouble(MyLots/StopLoss,2);

MyLots = NormalizeDouble(MyLots/(MarketInfo(Symbol(),MODE_TICKVALUE)/100),2);

MyLots = NormalizeDouble(MyLots/100,2);

return(MyLots);

}[/PHP]

the Stoploss is = [PHP]StopLoss= NormalizeDouble(Ask-SLbuy()-20*Point,5)*10000;

e Rischio_per_trade = 0,5.

Grazie per l'aiuto

 

dasio

prova la funzione di questo post: https: //www.mql5.com/en/forum/general

dasio:
Ciao,

Io uso questo codice per calcolare il lottizzatore. A volte ricevo l'errore 131. Il codice è ok?

double Lotti1(double StopLoss,double Rischio_per_trade){

double MyLots,AllowedLots,MaxLots,MinLot,StopValue,TickValue;

int RightLots;

AllowedLots=(AccountFreeMargin()* Rischio_per_trade/100);

if (Digits==2 || Digits==4)

TickValue=MarketInfo(Symbol(),MODE_TICKVALUE)/10;

else

TickValue=MarketInfo(Symbol(),MODE_TICKVALUE);

StopValue=StopLoss*TickValue;

MinLot=MarketInfo(Symbol(),MODE_MINLOT);

MaxLots=MarketInfo(Symbol(),MODE_MAXLOT);

RightLots=MathRound(AllowedLots/StopValue);

double soldi_ora = AccountBalance()/100;

MyLots = soldi_ora*(Rischio_per_trade/10);

MyLots = NormalizeDouble(MyLots/StopLoss,2);

MyLots = NormalizeDouble(MyLots/(MarketInfo(Symbol(),MODE_TICKVALUE)/100),2);

MyLots = NormalizeDouble(MyLots/100,2);

return(MyLots);

}[/PHP]

the Stoploss is = [PHP]StopLoss= NormalizeDouble(Ask-SLbuy()-20*Point,5)*10000;

e Rischio_per_trade = 0.5.

grazie
 

Cari amici,

Auguro rispettosamente a voi e a tutti i membri del forum salute e felicità nel prossimo anno nuovo! Mi sento davvero grato a molti codificatori eccezionali e generosi qui e alle idee brillanti dei membri di questo forum. Tutti mi aiutano molto a migliorare le mie capacità di trading (anche se sono ancora un idiota in questa carriera )

Recentemente, rivedendo il mercato e il mio approccio al trading, ho pensato a un indicatore che mi aiuterebbe molto (e forse anche altri). La mia idea è semplice, ma trasferirla in codice è al di là delle mie capacità. Non so se tale indicatore esiste o meno, quindi descriverò la mia idea in dettaglio e spero che qualcuno mi aiuti a trovare o a creare quello più adatto.

- Idea generale: voglio tracciare continuamente il prezzo di mercato all'interno di un determinato intervallo di punti. L'indicatore mi darebbe alcune informazioni necessarie sull'azione del prezzo all'interno di segmenti di prezzo (dato intervallo fisso) come: (1) livello superiore, (2) livello inferiore, (3) livello mediano, (4) numero di barre nell'intervallo. Mi piacerebbe anche conoscere il livello del Punto di Controllo (POC) delle barre nel range dato, ma forse è troppo complicato nella codifica e consuma molta memoria del PC.

- Analogia: ho trovato indicatori popolari come "Market Profile", "Price Channel", o "Session HiLo", ... condividono molto la mia idea. Ma tutti loro sono limitati dall'intervallo di tempo come Orario, Giornaliero, ... non basato su un dato intervallo fisso o mancano di alcune caratteristiche come ho menzionato sopra. Ho provato a ricodificare su di loro per adattare la mia idea ma senza successo fino ad ora.

- Lista dei desideri sull'indicatore: (1) Parametro di ingresso: Intervallo fisso di punti; Intervallo di tempo (in minuti, ore o giorni) o numero di barre usato per contare il numero di barre chiuse entro l'intervallo dato; Allarme quando il prezzo tocca i livelli (opzionale)

(2) Output sul grafico principale: visualizzazione della linea orizzontale corrispondente ai livelli di intervallo (superiore, inferiore, medio), e testo che informa il numero di barre contate all'interno dell'intervallo per il tempo dato.

(3) Aggiornamento continuo: l'informazione verrebbe aggiornata in 3 casi: (a) il prezzo fa un nuovo massimo della gamma attuale, (b) un nuovo minimo della gamma attuale, (c) sempre più barre si consolidano nella gamma attuale.

Di solito devo fare tutte queste cose manualmente. Ora spero che l'indicatore mi aiuti a semplificare il mio lavoro, a risparmiare tempo e a mantenere la mia attenzione sull'azione dei prezzi. Sto cercando su internet ma non riesco a trovare questo strumento. Se ne conoscete uno, o ne fate uno, ve ne sarei molto grato.

Grazie per la vostra considerazione e il vostro aiuto!

E ancora, Felice Anno Nuovo a voi!

Cordiali saluti,

fareastol

oh ho dimenticato foto allegata su ciò che l'immagine dell'indicatore

File:
 

Allego un'altra immagine per chiarire la mia idea:

a) L'alto o il basso dell'intervallo corrente è determinato separatamente dal numero della barra di ingresso. L'alto/basso è adattato alle dimensioni dell'intervallo e all'attuale azione del prezzo di mercato.

b) L'input Bar Number è solo usato per calcolare il numero di barre chiuse all'interno del range corrente.

c) Posso mettere l'indicatore più di una volta su un grafico, con diverse impostazioni di input, naturalmente.

fareastol:
Cari amici,

Auguro rispettosamente a te e a tutti i membri del forum salute e felicità nel prossimo anno nuovo! Sono davvero grato a molti codificatori eccezionali e generosi qui e alle idee brillanti dei membri di questo forum. Tutti mi aiutano molto a migliorare le mie capacità di trading (anche se sono ancora un idiota in questa carriera )

Recentemente, rivedendo il mercato e il mio approccio al trading, ho pensato a un indicatore che mi aiuterebbe molto (e anche altri, forse). La mia idea è semplice, ma trasferirla in codice è al di là delle mie capacità. Non so se tale indicatore esiste o meno, quindi descriverò la mia idea in dettaglio e spero che qualcuno mi aiuti a trovare o a creare quello più adatto.

- Idea generale: voglio tracciare continuamente il prezzo di mercato all'interno di un determinato intervallo di punti. L'indicatore mi darebbe alcune informazioni necessarie sull'azione del prezzo all'interno di segmenti di prezzo (dato intervallo fisso) come: (1) livello superiore, (2) livello inferiore, (3) livello mediano, (4) numero di barre nell'intervallo. Mi piacerebbe anche conoscere il livello del punto di controllo (POC) delle barre nell'intervallo dato, ma forse è troppo complicato nella codifica e consuma molta memoria del PC.

- Analogia: ho trovato indicatori popolari come "Market Profile", "Price Channel", o "Session HiLo", ... condividono molto la mia idea. Ma tutti loro sono limitati dall'intervallo di tempo come Orario, Giornaliero, ... non basato su un dato intervallo fisso o mancano di alcune caratteristiche come ho menzionato sopra. Ho provato a ricodificare su di loro per adattare la mia idea ma senza successo fino ad ora.

- Lista dei desideri sull'indicatore: (1) Parametro di ingresso: Intervallo fisso di punti; Intervallo di tempo (in minuti, ore o giorni) o numero di barre usato per contare il numero di barre chiuse entro l'intervallo dato; Allarme quando il prezzo tocca i livelli (opzionale)

(2) Output sul grafico principale: visualizzazione della linea orizzontale corrispondente ai livelli di intervallo (superiore, inferiore, medio), e testo che informa il numero di barre contate all'interno dell'intervallo per il tempo dato.

(3) Aggiornamento continuo: l'informazione verrebbe aggiornata in 3 casi: (a) il prezzo fa un nuovo massimo della gamma attuale, (b) un nuovo minimo della gamma attuale, (c) sempre più barre si consolidano nella gamma attuale.

Di solito devo fare tutte queste cose manualmente. Ora spero che l'indicatore mi aiuti a semplificare il mio lavoro, a risparmiare tempo e a mantenere la mia attenzione sull'azione dei prezzi. Sto cercando su internet ma non riesco a trovare questo strumento. Se ne conoscete uno, o ne fate uno, ve ne sarei molto grato.

Grazie per la vostra considerazione e il vostro aiuto!

E ancora, Felice Anno Nuovo a voi!

Cordiali saluti,

fareastol

oh ho dimenticato l'immagine allegata su ciò che io immagine dell'indicatore
File:
 

Credo di aver fatto qualcosa io stesso, dopo tutto. Ora condivido con voi.

Come indicato all'interno dell'indicatore, non invento nulla, solo mischio due indicatori correlati che ho. Forse non è ben "mescolato"

Per favore date un'occhiata e miglioratelo se pensate che sia utile!

 

Disegnare oggetto rettangolo multiplo

Ciao,

sto cercando di disegnare un rettangolo multiplo controllando l'ultima candela n.

Il punto ha una regola semplice.

In allegato c'è un esempio.

Il grande rettangolo senza sfondo definisce la regola (controllare il prezzo incluso dal punto 1 al punto 2 usando l'everage mobile).

Il punto per disegnare il rettangolo è il massimo e il minimo della barra con il massimo della gamma.

Come posso codificarlo?

Grazie per la vostra risposta.

scusate,

non posso allegare un'immagine ora. Il punto 1 è l'incrocio del MA veloce con il MA lento verso l'alto e il punto 2 è l'incrocio del MA veloce con il MA lento verso il basso.

 

Qualcuno potrebbe aiutarmi a modificare l'indicatore di barre del grafico rsi allegato?

Questo indicatore visualizza barre blu quando l'RSi è sopra il livello 50 e barre rosse sotto questo livello.

In realtà il livello 50 è il livello medio dell'RSI. Sarebbe molto utile se venissero aggiunti altri due livelli a 70 e a 30 che sono i veri livelli di ipercomprato e ipervenduto. e quando l'RSI passa questi due livelli 70/30, anche le candele dovrebbero cambiare colore. Apprezzerei molto qualsiasi aiuto e grazie in aggiunta.

File:
 

Laszlo,

Prova questa versione. Funziona ancora con 2 livelli ma mostra (o meglio, non mostra) 3 stati. Colora le barre quando i livelli sono rotti verso l'alto o verso il basso e se il valore rsi è tra i 2 livelli lascia le barre così come sono (quindi sono semplici barre non colorate dall'indicatore) Ecco un esempio di come appare e come si confronta con il "normale" rsi:

Laszlo:
Qualcuno potrebbe aiutarmi a modificare l'indicatore di barre del grafico rsi allegato?

Questo indicatore mostra le barre blu quando RSi è sopra il livello 50 e le barre rosse sotto questo livello.

In realtà il livello 50 è il livello medio dell'RSI. Sarebbe molto utile se venissero aggiunti altri due livelli a 70 e a 30 che sono i veri livelli di ipercomprato e ipervenduto. e quando l'RSI passa questi due livelli 70/30, anche le candele dovrebbero cambiare colore. Apprezzerei molto qualsiasi aiuto e grazie in aggiunta.
 
fareastol:
Penso di aver fatto qualcosa io stesso dopo tutto. Ora condivido con voi.

Come indicato all'interno dell'indicatore, non invento nulla, semplicemente mescolo due indicatori correlati che ho. Forse non è ben "mescolato"

Per favore date un'occhiata e miglioratelo se pensate che sia utile!

Fareastol, mi piace il tuo indicatore di gamma e quello che sto pensando che sarà cool se è possibile aggiungere "punto di partenza" trascinamento (che hai) e "trascinamento punto finale" e poi sarà automaticamente disegnare gamma per quel periodo.

Motivazione: