Sistemi Esperti: Triangular Arbitrage

Triangular Arbitrage:

Questo Expert Advisor (EA) implementa una strategia di arbitraggio triangolare tra tre coppie di valute: EURUSD, USDJPY ed EURJPY

Autore: Джованни Орсани

hola qusiera saber en que simbolo se coloca el EA para que trabaje o toca colocarlo en los tres simbolos que mencionas
Edward Garnica posizionato l'EA per funzionare o è necessario posizionarlo nei tre simboli che menzionate.
Si può usare qualsiasi simbolo, anche un simbolo diverso dai tre citati, in quanto sono tutti definiti nel codice.
Funziona bene sui dati storici (obiettivo di profitto fissato a 0,1$). Ho impostato il ritardo (ping) al livello di 60 ms.

L'ho provato anche su dati reali su un conto demo:
Apre e chiude i trade, ma con uno svantaggio. Probabilmente a causa del lungo tempo di ping (avevo circa 60 ms).
Voglio provare via VPS.
sfhomebiz #:
Funziona bene sui dati storici(obiettivo di profitto impostato a 0,1$). Ho impostato il ritardo (ping) a 60 ms.
Il motivo è questo.
void CloseArbitragePositions()
{
   double totalProfit = 0;
  
   // Calcola il profitto cumulativo delle posizioni col Magic Number
   for(int i = 0; i < PositionsTotal(); i++)
   {
      ulong ticket = PositionGetTicket(i);
      if(PositionSelectByTicket(ticket))
      {
         if(PositionGetInteger(POSITION_MAGIC) == MagicNumber)
            totalProfit += PositionGetDouble(POSITION_PROFIT);
      }
   }
  
   if(totalProfit >= ProfitTarget)
   {
      Print("Profit target raggiunto: ", totalProfit, ". Procedo alla chiusura delle posizioni.");
      
      // Chiude le posizioni iterando all'indietro per sicurezza
      for(int i = PositionsTotal() - 1; i >= 0; i--)
      {
         ulong ticket = PositionGetTicket(i);
         if(PositionSelectByTicket(ticket))
         {
            if(PositionGetInteger(POSITION_MAGIC) == MagicNumber)
            {
               string sym = PositionGetString(POSITION_SYMBOL);
               if(!trade.PositionClose(sym))
                  Print("Errore nella chiusura della posizione su ", sym, " - ", GetLastError());
               else
                  Print("Posizione su ", sym, " chiusa con successo.");
            }
         }
      }
   }
}
Tutti gli EA con questa condizione mostreranno qualcosa di buono.
fxsaber #:
Il motivo è questo. Tutti gli EA con questa condizione mostreranno qualcosa di buono.
Quindi non stampa i risultati negativi?
xery #:
Quindi non visualizza i risultati negativi?

Solo quando il passaggio del Tester viene interrotto.

// Questo è più potente, più alto trashold utilizzabile int CheckArbitrageOpportunity(double &diff, double &impliedPrice, double &directPrice) { double price1 = SymbolInfoDouble(symbol1, SYMBOL_BID); double price2 = SymbolInfoDouble(symbol2, SYMBOL_BID); directPrice = SymbolInfoDouble(symbol3, SYMBOL_ASK); impliedPrice = price1 * price2; diff = (impliedPrice - directPrice) / directPrice; if(diff > Threshold) return 1; price1 = SymbolInfoDouble(symbol1, SYMBOL_ASK); price2 = SymbolInfoDouble(symbol2, SYMBOL_ASK); directPrice = SymbolInfoDouble(symbol3, SYMBOL_BID); impliedPrice = price1 * price2; diff = (impliedPrice - directPrice) / directPrice; if(diff < -Threshold) return -1; return 0; }
michal_ SYMBOL_BID); double price2 = SymbolInfoDouble(symbol2, SYMBOL_BID); directPrice = SymbolInfoDouble(symbol3, SYMBOL_ASK); impliedPrice = price1 * price2; diff = (impliedPrice - directPrice) / directPrice; if(diff > Threshold) return 1; price1 = SymbolInfoDouble(symbol1, SYMBOL_ASK); price2 = SymbolInfoDouble(symbol2, SYMBOL_ASK); directPrice = SymbolInfoDouble(symbol3, SYMBOL_BID); impliedPrice = price1 * price2; diff = (impliedPrice - directPrice) / directPrice; if(diff < -Threshold) return -1; return 0; }
Perché avete deciso di utilizzare il bid dei primi due simboli per calcolare l'ask del directPrice e viceversa?

Ciao a tutti!

Sono interessato a utilizzare un Expert Advisor (EA) per l'arbitraggio triangolare automatizzato su MetaTrader 5 e sto cercando broker che consentano questo tipo di strategia di trading.

Qualcuno potrebbe consigliarmi dei broker affidabili i cui Termini e Condizioni non vietino esplicitamente il trading di arbitraggio, in particolare l'arbitraggio triangolare?

Sono particolarmente interessato a broker che:

  1. Consentano l’arbitraggio triangolare automatizzato tramite Expert Advisor (EA).

  2. Non vietino esplicitamente le strategie di arbitraggio nei loro Termini e Condizioni.

  3. Non annullino né revocino i profitti legittimi generati dall’arbitraggio triangolare.

  4. Supportino MT5 e consentano un'esecuzione automatizzata veloce.

  5. Accettino clienti residenti in Brasile.

Se avete utilizzato personalmente l’arbitraggio triangolare su un conto reale, vi sarei molto grato se mi indicaste quale broker avete utilizzato e se avete riscontrato restrizioni, operazioni rifiutate o problemi nel prelevare i profitti.

Sono particolarmente interessato ai broker in cui questa strategia è consentita contrattualmente, non solo tecnicamente possibile.

Grazie in anticipo per aver condiviso la vostra esperienza e i vostri consigli!