[ARCHIVIO]Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non posso andare da nessuna parte senza di te - 5. - pagina 334
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Boris, se si commenta una delle condizioni in int GetGeneralSignal(), l'apertura è chiara.
L'ho rintracciato. Il flag non cambia il suo valore quando la redditività degli ordini attualmente aperti è in meno. Ecco la funzione riscritta che dovrebbe impostare i flag short e long su false, cioè proibire l'apertura di una posizione se ci sono ordini negativi:
La funzione chiamante è questa:
Forse le condizioni sono più adatte al bai? Francamente parlando, solo le vendite sono aperte oggi a causa del declino molto debole dell'euro, ma comunque qualcosa è meglio di niente!
No. Il segnale è scritto in int GetGeneralSignal() e funziona chiaramente. Il segnale è primitivo, l'ho preso solo per il test. Se il PCI ha attraversato il confine superiore - compra, e se quello inferiore - vendi. Io stesso non uso gli indici, e ho deciso di controllare questo solo per un esperimento.
Quindi ci siamo. Senza bandiere, tutto funziona perfettamente. Ma non è così per le bandiere. Quando la funzioneint FindOrders(bool&long,bool&short) contiene un ordine del tipo dato e il suo profitto è inferiore a zero, la mia funzione, secondo il riferimento alla funzione GetGeneralSignal(), deve passare un valore falso a un certo flag ma in realtà i flag mostrano sempre true:
Lo vedo nella stampante, ma non è chiaro perché la bandiera non cambia.
A proposito, ho mostrato la redditività degli ordini nella stampa:
E nella stampa del valore delle bandiere, questo è ciò che viene mostrato:
Cioè è chiaro che quando la redditività è sotto zero, il flag corrispondente dovrebbe essere impostato su false, ma questo non succede... Sembra elementare, ma c'è qualcosa che non va.
No. C'è un segnale nella funzione int GetGeneralSignal() che funziona bene. Il segnale è primitivo, l'ho preso solo per il test. Se il PCI ha attraversato il confine superiore - compra, e se quello inferiore - vendi. Io stesso non uso gli indici, e ho deciso di controllare questo solo per un esperimento.
Quindi ci siamo. Senza bandiere, tutto funziona perfettamente. Ma non è così per le bandiere. Quando la funzioneint FindOrders(bool&long,bool&short) contiene un ordine del tipo dato e il suo profitto è inferiore a zero, la mia funzione, secondo il riferimento alla funzione GetGeneralSignal(), deve passare il valore falso a un certo flag ma i flag contengono sempre true:
Lo vedo nella stampa, ma non capisco perché la bandiera non cambia.
Lo vedo nella stampa, ma non è chiaro perché la bandiera non cambi.Corretto il refuso.
Ecco uno screenshot:
Potete vedere, sul grafico, che il bai è meno e la bandiera = TRU comunque.
Mi dispiace per te! Vi scriverò come funzionerà senza loop, che sono rallentati dalle funzioni! Ecco il tuo codice, ma in cosa lo cambio!
Questo schema è privo di crampi e funziona istantaneamente! Eliminate le funzioni inutili! Potete trovare la funzione ExistPositions() in Funzioni utili di Dear Kim!Mi dispiace per te! Vi scriverò come funzionerà senza loop, che sono rallentati dalle funzioni! Ecco il tuo codice, ma in cosa lo cambio!
Questo schema è facile e funziona immediatamente! Eliminate le funzioni inutili! Potete trovare la funzione ExistPositions() in Funzioni utili di Kim!Boris, la funzioneExistPositions halo stesso ciclo, solo che ha più controlli inutili, quindi non sarà lenta lungo il percorso. La tua logica mi è chiara, ma il motivo dell'inoperatività della versione precedente non è stato rivelato, il che è strano :)
Si usano anche queste bandiere:
E stavo dimostrando che non ritornano correttamente.
Quindi, di nuovo, se le variabili profitL e profitS saranno presenti in questa funzione, i flag non sono necessari.
Ecco come è andata a finire:
Di nuovo, non si apre su segnale, si apre su qualsiasi cosa.
l'ha cambiato in...
Ora illivello di chiusuranon è modificatoquando il profitto aumenta...
L'ho già capito.
Boris, la funzioneExistPositions ha lo stessociclo, ma ci sono più controlli non necessari, quindi non sarà lenta lungo il percorso. La tua logica mi è chiara, ma il motivo dell'inoperatività della versione precedente non è stato rivelato, il che è strano :)
Stai usando anche queste bandiere:
E ho dimostrato che non vengono restituiti correttamente.
Quindi, di nuovo, se le variabili profitL e profitS saranno presenti in questa funzione, allora i flag non sono necessari.
Ecco come è andata a finire:
Anche in questo caso non si apre per segnale, ma per qualsiasi cosa.