Chiedete! - pagina 128

 
:: mettete le vostre variabili esterne (avete fatto una lista) nello stesso ordine nella vostra funzione iCustom, assicuratevi di averle tutte.
Dave137:
Come potrei scrivere un input iCustom per un EA. Il nome dell'indicatore è CycleTarget.

Ecco le variabili dell'indicatore:

extern int PriceActionFilter=1;

extern int Length=3;

extern int MajorCycleStrength=4;

extern bool UseCycleFilter=false;

extern int UseFilterSMAorRSI=1;

extern int FilterStrengthSMA=12;

extern int FilterStrengthRSI=21;

a=iCustom(NULL,0,????????????,0,0); Cosa devo usare per riempire i campi?

Confuso?

Dave
 

Grazie per il tuo aiuto In10tion

Non sto cercando di essere vago

Tornerò quando saprò cosa sto cercando di dire

Grazie ancora

Jbear

 
:: controlla prima la tua documentazione (ti ho dato un link su orderSend)... Solo orderSend può riempire la tua variabile di commento nel tuo ordine, dopo non puoi più cambiarla... quindi OrderClose non ha altra opzione per cambiarla... & metti la funzione "print" (log) ogni volta che c'è una conferma della chiusura del tuo ordine.
forexarchitect:
aiuto per favore

dove e come posso aggiungere un codice qui in modo da poter aggiungere del testo alla mia colonna "commento" nel terminale.

esempio - voglio aggiungere un commento testuale "Chiusura ordine per condizione tipo 9c"

inoltre, dove posso mettere Print log "Chiusura per condizione tipo 9c"

grazie

//+------------------------------------------------------------------+

//| Chiudi condizione tipo 9c

//| CONTROLLARE IL SALDO STORICO DEL CONTO poi chiudere il prezzo più grande diverso

//+------------------------------------------------------------------+

void CheckCloseConditionType9c()

{

int ticket1;

doppio max_dist;

for (;;)

{

ticket1 = -1;

int cnt = OrdiniTotali();

for (int i=0; i < cnt; i++)

{

if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continua;

se (OrderSymbol() != Symbol()) continua;

se (OrderMagicNumber() != Magic) continua;

int type = OrderType();

se ((type == OP_BUY || type == OP_SELL) == false) continua;

RefreshRates();

if (ticket1 == -1 || MathAbs(Bid - OrderOpenPrice()) > max_dist)

{

ticket1 = OrderTicket();

max_dist = MathAbs(Bid - OrderOpenPrice());

}

}

if (ticket1 == -1) break;

//-----

double today_hist_profit = GetTodayProfit(MODE_HISTORY);

if (today_hist_profit <= Profit2ExitTodayBalance) break;

se (OrderSelect(ticket1, SELECT_BY_TICKET))

{

doppio lotto = PartialCloseLot;

if (lot > OrderLots()) lot = OrderLots();

for (i=0; i < RepeatN; i++)

{

RefreshRates();

bool res = OrderClose(OrderTicket(), lot, OrderClosePrice(), Slippage, clClose);

if (res) break;

}

}

}

}
 
Linuxser:
Ciao JBear, ricordati solo di cliccare su "Ricordati di me" con ogni browser (Firefox, Opera, Explorer, Safari...) e non limitare molto i cookie.

Grazie Linuxser.

Fatto

 

Capito... grazie

 

Ordine a lotti?

Qualcuno può aiutarmi a codificare un "ordine batch"? Vorrei avere qualcosa che mi permetta di inserire due posizioni separate con il clic di un pulsante. Di solito faccio trading in posizioni coperte. Ho diverse coppie che scambio in momenti diversi. Tutto quello che vorrei avere è un EA che nel momento in cui lo accendo, mi inserisce (per esempio) in un lotto lungo sulla EURUSD e un lotto corto sulla GBPUSD. Qualcuno può aiutarmi con questo codice? Sarebbe sicuramente molto più bello premere semplicemente un pulsante piuttosto che aprire un grafico, cliccare su un nuovo ordine, cliccare su compra e poi correre ad aprire il grafico successivo, cliccare su un nuovo ordine e vendere.

Grazie,

EZ

 

ordine batch

Ciao,

Non sono un codificatore, ma penso che se volessi fare questo lo guarderei in modo leggermente diverso. avere un EA per piazzare un ordine, acquisto o vendita, che metti sui grafici, poi quando accendi l'EA in Metatrader eseguirà gli EA e piazzerà gli ordini in base ai grafici su cui hai messo l'EA.

In questo modo hai più ordini istantanei piazzati su diversi grafici di valuta.

Il problema è però decidere quale vuoi, comprare o vendere, ma può aiutarti fino a quando non salta fuori qualcosa di meglio.

PG

 

e o

ciao ragazzi

Ho una domanda... come faccio a cambiare quanto segue

extern double MaxLot = 1.50;

doppio max_lot = GetMaxLot(OP_BUY, OP_SELL);

if (max_lot >= MaxLot) lot = CalcHedgeLot(order_type);

(tipo_ordine)]: ", lotto);

if (lot == -1) return (lot);

lotto = NormalizeDouble(lotto, LotPrec);

se (lotto > MaxLot) lotto = MaxLot;

se (lotto < MinLot) lotto = MinLot;

return (lot);

}

il controllo di cui sopra per OP_BUY E OP_SELL

domanda: come faccio a cambiarlo in qualsiasi OP_BUY O qualsiasi OP_SELL

Grazie

 

Qualcuno può dirmi qual è il codice MQL4 per contare solo le barre visibili?

Mi sembra di ricordare qualche tempo fa che qualcuno ha postato il codice per questo, ma non riesco a trovarlo da nessuna parte quando lo cerco, perché sono un po' in difficoltà su cosa cercare esattamente. Sulla cima della mia testa mi sembra di ricordare che fosse qualcosa come ...

.... int counted_bars = window() o int window() = Bars-window()

Ma poi di nuovo, la vecchia materia grigia non è più quella di una volta ...

 
Sadly:
Qualcuno può dirmi qual è il codice MQL4 per contare solo le barre visibili?

Mi sembra di ricordare qualche tempo fa che qualcuno ha postato il codice per questo, ma non riesco a trovarlo da nessuna parte quando lo cerco, perché sono un po' impedito da cosa cercare esattamente. Sulla cima della mia testa mi sembra di ricordare che fosse qualcosa come ...

.... int counted_bars = window() o int window() = Bars-window()

Ma poi di nuovo, la vecchia materia grigia non è più quella di una volta ...

È questo che stai cercando?

-----------

int bars_count=WindowBarsPerChart();

int bar=WindowFirstVisibleBar();

-----------

Goen

Motivazione: