Trading Sistematico

Imposta un Suono Personalizzato per gli Avvisi su MetaTrader 4
MetaTrader4
Imposta un Suono Personalizzato per gli Avvisi su MetaTrader 4

Se sei un trader attivo su MetaTrader 4, sai quanto sia importante ricevere avvisi tempestivi per non perdere occasioni di trading. Oggi ti mostrerò come impostare un suono personalizzato per ogni nuovo bar che si forma, così da essere sempre aggiornato sulle variazioni del mercato. Perché usare un suono personalizzato? Utilizzare un suono specifico per gli avvisi ti permette di distinguere tra diversi eventi di trading. In questo modo, puoi reagire più rapidamente alle opportunità. Immagina di essere concentrato su più grafici contemporaneamente; un suono che hai scelto può attirare la tua attenzione immediatamente. Come impostare il codice Ecco il codice che puoi utilizzare per generare un avviso sonoro ogni volta che si forma un nuovo bar: // Codice per avvisi personalizzati su MetaTrader 4 Assicurati di inserire questo codice nel tuo Expert Advisor o nello script che stai utilizzando. Una volta fatto, puoi personalizzare il suono che desideri utilizzare. Passaggi per personalizzare il suono Scegli il suono: Puoi utilizzare qualsiasi file audio salvato nel tuo computer, basta che sia in formato WAV. Carica il file audio: Inserisci il file audio nella cartella Sounds di MetaTrader 4. Imposta l’avviso: Modifica il codice per includere il nome del file audio che hai caricato. Seguendo questi semplici passaggi, potrai avere avvisi sonori personalizzati e mantenere il tuo trading sempre sotto controllo!

2021.12.17
Massimizzare i Trade Dopo il Break Even: Guida all'uso di un Expert Advisor per MetaTrader 4
MetaTrader4
Massimizzare i Trade Dopo il Break Even: Guida all'uso di un Expert Advisor per MetaTrader 4

Ciao a tutti, oggi parliamo di un argomento che interessa a molti trader: come ottimizzare i propri trade dopo aver raggiunto il break even grazie a un Expert Advisor (EA). Questo piccolo gioiello di EA ha una funzione fondamentale: il conteggio degli ordini. Funzione OrdersCounter int OrdersCounter() {    int counter=0;    //---    for(int i=OrdersTotal()-1; i>=0; i--)       if(OrderSelect(i,SELECT_BY_POS))          if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) {           // se l'ordine è stato aperto da questo EA           //--- se è avvenuto il break even           double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();             if(!XBreakeven) {               counter++; // conta la posizione               }           }    return counter; } Questa funzione conta solo gli ordini che non hanno uno stop loss superiore o uguale al prezzo di apertura per gli acquisti e inferiore per le vendite. In breve, stiamo contando tutti gli ordini che non sono andati in break even o che non hanno un trailing stop che protegge il prezzo di apertura. double XBreakeven = OrderType()==OP_BUY ? OrderStopLoss() >= OrderOpenPrice() : OrderStopLoss() <= OrderOpenPrice();             if(!XBreakeven) // se solo il break even e il trailing stop non sono avvenuti Attraverso questo contatore, otteniamo un valore che utilizzeremo per limitare la nostra posizione massima, che in questo caso è impostata a 1 ordine alla volta.    if(OrdersCounter()<MaximumOrders) Quindi, ogni volta che si verifica un break even, questa funzione ignorerà il conteggio, permettendo di aprire un altro ordine di vendita, e il ciclo continua. Naturalmente, tutto ciò non sarebbe possibile senza una funzione di break even. void BreakEvenFunction() {    //---    for(int i=OrdersTotal()-1; i>=0; i--) {       if(OrderSelect(i,SELECT_BY_POS)) {         if(OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol()) {           // per acquisti se il Bid è sopra il prezzo di apertura + pips di break even, viceversa per le vendite           double xHybrid = OrderType()==OP_BUY ? (Bid>OrderOpenPrice()+BreakevenPips*_Point && OrderStopLoss()<OrderOpenPrice()) : (Ask<OrderOpenPrice()-BreakevenPips*_Point && OrderStopLoss()>OrderOpenPrice());           /* per acquisti solo se lo StopLoss è uguale o superiore al prezzo di apertura, viceversa per le vendite */           if(xHybrid) {             bool modfy = OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,clrNONE);           }       }   } } Che ne dite? Vale la pena provarlo!

2021.07.13
Scopri il Framework Validate Me per MetaTrader 4: Guida Pratica per Trader
MetaTrader4
Scopri il Framework Validate Me per MetaTrader 4: Guida Pratica per Trader

Framework Validate Me Oggi voglio condividere con voi la mia interpretazione di come programmare un robot di trading utilizzando ordini di acquisto e vendita per affrontare la validazione di mercato. Questo framework si occupa di alcune verifiche che un robot di trading deve superare prima di essere lanciato sul mercato. Ricordate, è tutto a scopo educativo! Esempio di codice per l'acquisto ask=MarketInfo(_Symbol,MODE_ASK);          bid=MarketInfo(_Symbol,MODE_BID);          sl=(OrderStopPips==0)?0.0:bid-ExtOrderStop;          if(sl!=0.0 && ExtOrderStop<StopLevel)             sl=bid-StopLevel;          tp=(OrderTakePips==0)?0.0:ask+ExtOrderTake;          if(tp!=0.0 && ExtOrderTake<StopLevel)             tp=ask+StopLevel;          GetLot=CheckVolumeValue(Lots);          if(!CheckStopLoss_Takeprofit(OP_BUY,ExtOrderStop,ExtOrderTake))             return;          if(CheckMoneyForTrade(GetLot,OP_BUY))             order=OrderSend(_Symbol,OP_BUY,GetLot,ask,10,sl,tp,"FrameWork",678,0,Blue); Parametri del framework

2021.06.22
Primo Precedente 9 10 11 12 13 14 15 16 17 18 19 Successivo Ultimo