Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 774

 
pavlicos:

Aiuto che può. Consulente esperto a due valute,

Se le condizioni di scambio sono le stesse, allora si apre lo scambio nella prima valuta.

Come scrivere il "Se l'ordine è aperto nella prima valuta OP_BUY, poi aprire un affare nella seconda OP_SELL

Ecco un esempio

se (OrdiniTotali()== 1 ) // con questa linea per 2 valute apre sia BUY che SELL o 2 ordini SELL

if ( currenttype == OP_BUY ) // non si apre affatto

if ( currentticket == 1) // non si apre nemmeno così.

secondticket = OrderSend("GBPUSD", OP_SELL, Lots, MarketInfo("GBPUSD", MODE_BID), 2, 0, 0, 0, 0, WindowExpertName(), 0, 0, Red); //Ordine per 2 valute

if ( c - d > a) // se la condizione di trading è soddisfatta, l'ordine per 1 valuta si apre perfettamente.

currentticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0, "macd sample",Magic,0,Green); //Ordine su 1 valuta

Avete controllato gli strumenti per i quali la posizione è aperta?
 
Ho provato, manon si aprein 2 valute.
 
evillive:
Il prezzo è lì, l'ordine pendente a quel prezzo è scomparso, e l'ordine a mercato a quel prezzo è apparso. Inoltre, a volte appare una voce nel commento, qualcosa come "dal biglietto xxxx", dove xxxx è il numero del biglietto dell'ordine in sospeso.
Sì, ho capito. Grazie.
 
int i;
ArraySetAsSeries(ExtMacdBuffer,true);
ArraySetAsSeries(Value,true);
for(i=0;;i++)
ExtMacdBuffer[i]=iMA(NULL,0,InpFastEMA,0,MODE_EMA,PRICE_CLOSE,i)-
                 iMA(NULL,0,InpSlowEMA,0,MODE_EMA,PRICE_CLOSE,i);
ArrayCopy(Value,ExtMacdBuffer,0,0,WHOLE_ARRAY);

Buona sera a tutti, aiutatemi, voglio copiare i dati dall'array ExtMacdBuffer[] che è la differenza tra il valore EMA breve e lungo nell'array Value [], ho scritto sopra e non succede niente, cosa manca? Forse non è affatto corretto?

Grazie in anticipo per l'aiuto.

 
Megagrider:
Qui puoi vedere tutto (guarda la fine stessa).
Prova l'uguaglianza if(iRSI(NULL,0,14,PRICE_CLOSE,0)=70 || iRSI(NULL,0,14,PRICE_CLOSE,1)=70) uno dei due valori se uguale allora ....
 
Pokrov:
Prova l'uguaglianza mettendo if(iRSI(NULL,0,14,PRICE_CLOSE,0)=70 || iRSI(NULL,0,14,PRICE_CLOSE,1)=70) uno dei due valori se uguale allora ....
Hai letto le carte o hai letto i fondi di caffè?
 
Non funziona... :(
 
Megagrider:
Non funziona... :(
Non dovrebbe nemmeno funzionare. Bisogna pensare prima di provare. Ho visto la tua domanda, ma non ho notato nessun errore, per questo non ho detto niente. Cercate di assegnare valori alle variabili RSI e mettetele nei commenti per chiarezza. E usare queste variabili nel controllo delle condizioni.
 
AlexeyVik:
E non dovrebbe funzionare. Bisogna pensare prima di provare. Ho visto la tua domanda, ma non ho notato nessun errore, per questo non ho detto niente. Provate ad assegnare i valori RSI alle variabili e metteteli nel commento per chiarezza. E usare queste variabili nei controlli delle condizioni.
Non so perché l'ho detto male, è perché mi mancava la preparazione tecnica, ma il segnale arriva a 70, funziona, non sopra 70, forse dovresti scrivere uguaglianza == , ma non = , è un errore, sono d'accordo. E invece di ragionare sul caffè e sulle mappe, faresti meglio ad aiutare con gli array.
 
Le variabili saranno visualizzate nel commento del grafico e sarete in grado di vedere come cambiano. E il valore dell'indicatore può essere uguale al valore impostato così raramente che sarete in attesa di questo evento. Quindi in origine era scritto correttamente, se la prima barra è sotto < 70 e la barra zero è sopra/uguale a >=, allora si è verificato un crossover.
Motivazione: