Inizierò con un esempio semplice, altrimenti sarà difficile da spiegare.
Bene, per il fatto che in entrambi i casi viene restituito lo stesso valore dalle vostre subroutine - prezzo Bid, allora una di queste due funzioni può essere eliminata dal codice. Se i valori restituiti sono diversi, potete, per esempio, assemblarli in una stringa - restituite dalla subroutine questi due valori separati da qualche separatore, per esempio punto e virgola. E restituirli come stringa. Poi, nel codice principale, estrarre 2 valori dalla stringa e convertirli in doppio.
Ciao, visto che qualcuno ha già commentato la tua domanda, vorrei chiederti: siete i campioni del 2008 ?
Se è così, potrebbe parlarci del suo GRAAL, senza rivelare tutti i "segreti della corte di Madrid" e senza raccontarci "tutte le storie del bosco di Vienna". Basta sollevare un po' il velo... Puoi - in questo ramo, sono sicuro, la gente lo troverà utile!
Io stesso mi sto preparando attivamente per il campionato...
Come posso fare in modo che la differenza tra gli ordini di apertura dello stesso segno sia di 1 barra?
Dobbiamo confrontare il tempo di apertura di una posizione con il tempo di apertura della barra corrente Time[0]. Se il tempo di apertura di una posizione è maggiore o uguale al tempo di apertura della barra, l'Expert Advisor non aprirà una nuova posizione. Quando appare una nuova barra, Time[0] cambierà il suo valore in un tempo successivo e questo confronto mostrerà che la posizione non è ancora stata aperta sulla barra corrente (nuova) e possiamo negoziare.
A proposito, la tua domanda può anche essere suddivisa in 2 sotto-domande: 1. Alla barra attuale è stata aperta una posizione che è riuscita a chiudere, ma siamo ancora in attesa di una nuova barra. 2. Una posizione è stata aperta sulla barra corrente ed è riuscita a chiudersi, quindi possiamo aprire di nuovo una posizione sulla stessa barra (cioè possiamo aprire 1 posizione sulla stessa barra contemporaneamente).
Ciao!
Inizierò con un esempio semplice, altrimenti sarà difficile da spiegare.
doppio risultato()
{
doppio x = Bid;
ritorno(x);
}
doppio risultato_y()
{
doppio y = Bid;
ritorno(y);
}
Devono essere fusi in uno solo.
Il risultato() è quindi necessario come X in una funzione e come Y nell'altra . È possibile? Come fare?
double result() // ????
{
doppio x = Bid;
doppio y = Ask; // devo restituire anche questo
ritorno(x);
return(y); // ?
}
No, ci può essere solo un risultato. passare i valori per riferimento:
Ciao!
Inizierò con un esempio semplice, altrimenti sarà difficile da spiegare.
Invia qualcosa al sottoprogramma in modo che possa capire cosa è necessario.
Ciao!
...
Ciao, visto che qualcuno ha già commentato la tua domanda, vorrei chiederti: siete i campioni del 2008 ?
Se è così, potrebbe parlarci del suo GRAAL, senza rivelare tutti i "segreti della corte di Madrid" e senza raccontarci "tutte le storie del bosco di Vienna". Basta sollevare un po' il velo... Puoi - in questo ramo, sono sicuro, la gente lo troverà utile!
Io stesso mi sto preparando attivamente per il campionato...
Grazie!
Per favore, ditemi, perché si azzera una variabile quando si dichiara una funzione? È proprio qui:
È così che si imposta il valore di default se non lo si imposta esplicitamente quando lo si chiama, o mi sbaglio?
Quindi è così che è impostato al valore predefinito nel caso in cui non sia impostato esplicitamente quando viene chiamato, o mi sbaglio?
Non lo so. Ma sono interessato. Lo controllerò.
P.S.
Funziona!
Come posso fare in modo che la differenza tra gli ordini di apertura dello stesso segno sia di 1 barra?
Come posso fare in modo che la differenza tra gli ordini di apertura dello stesso segno sia di 1 barra?
Dobbiamo confrontare il tempo di apertura di una posizione con il tempo di apertura della barra corrente Time[0]. Se il tempo di apertura di una posizione è maggiore o uguale al tempo di apertura della barra, l'Expert Advisor non aprirà una nuova posizione. Quando appare una nuova barra, Time[0] cambierà il suo valore in un tempo successivo e questo confronto mostrerà che la posizione non è ancora stata aperta sulla barra corrente (nuova) e possiamo negoziare.
A proposito, la tua domanda può anche essere suddivisa in 2 sotto-domande:
1. Alla barra attuale è stata aperta una posizione che è riuscita a chiudere, ma siamo ancora in attesa di una nuova barra.
2. Una posizione è stata aperta sulla barra corrente ed è riuscita a chiudersi, quindi possiamo aprire di nuovo una posizione sulla stessa barra (cioè possiamo aprire 1 posizione sulla stessa barra contemporaneamente).