ottimizzazione automatica variabili
Forums › ProRealTime forum Italiano › Supporto ProOrder › ottimizzazione automatica variabili
- This topic has 7 replies, 3 voices, and was last updated 2 years ago by robertogozzi.
-
-
05/06/2022 at 6:42 PM #192831
salve, ipotizzando di avere 100 condizioni tipo c1,c2,c3 etc fino a c100, ho provato a mettere nella riga if: cx e poi aggiungere la x sulla schermata ottimizzazione variabili per far cercare alla macchina quale condizione delle 100 sia la migliore, cosi facendo il prt mi da errore e non accetta di testare solo la x restando invariata la c, ho anche provato a chiamare le variabili solo con numeri ma sempre errore lo stesso, come potrei fare per automatizzare i test? grazie
05/06/2022 at 9:38 PM #192836Se vuoi ottimizzarne una per volta devi metterne una per volta in IF.
05/08/2022 at 9:22 AM #192877Che ne dici di impostare una “condizione Flag” per ciascuna delle condizioni C1 e ottimizzare Flag?
Se C1 Allora
Flag = 1
Se C2 Allora
Flag = 2
Se C3 …. etc etcTi sembra un peccato rinunciare alla tua idea leo di menno soprattutto se hai messo insieme 100/molte condizioni in un’unica Strategia?
05/20/2022 at 10:24 AM #193483ciao, non so usare la funzione flag, potresti farmi un esempio per favore?
05/20/2022 at 10:58 AM #193485È più facile se pubblichi il tuo codice e poi provo la mia idea su un esempio funzionante?
Dico sopra perché per essere sicuro del mio codice, dovrei prima testare il mio codice.
Quindi potrei anche far funzionare la mia idea sul tuo codice?
05/20/2022 at 11:08 AM #193486Ecco un esempio (di utilizzo di Flag) del nostro gentile e cordiale programmatore interno Roberto.
https://www.prorealcode.com/topic/once-function-combined-with-a-stop/#post-163209
05/20/2022 at 11:14 AM #193488usa un flag (una variabile, indipendentemente dal nome, che viene utilizzata per segnalare qualcosa). Questo flag dovrebbe essere impostato su 0 quando non è sul mercato, quindi impostato su 1 ogni volta che c11 è true.
Quindi puoi effettuare l’ordine stop mentre questo flag è vero:
if not OnMarket thenFlag = 0endifc1 = OnMarket and (barindex – tradeindex <= 45)IF Flag = 0 thenc11 = close >= (tradeprice + 14*pipsize) //you may use HIGH instead of CLOSE, PIPSIZES makes your code portableFlag = 1endifIf not onmarket thenbuy 5 contract at marketendifif Flag thensell at Fulllongstop stopendif105/20/2022 at 12:10 PM #193500Prova con questo sistema (non so quante variabili accetta l’ottimizzatore, tenendo presente che ognuna ha 2 valori, 0 e 1, quindi saranno 2^N combinazioni):
123456789101112// ottimizza Var1, Var2,... VarN con i soli valori 0 e 1 (con 0 la condizione è disabilitata, con 1 è abilitata)//Cond1 = close > average[100,0](close) AND Var1 //il prezzo deve essere > della Sma100Cond2 = Rsi[14](close) CROSSES OVER 50 AND Var2 //Rsi incrocia al rialzo la linea medianaCond3 = summation[3](close > close[1]) = 3 AND Var3 //nelle ultime 3 candele il prezzo di chiusura è sempre più alto..CondN = close > open AND VarN //la candela corrente deve essere rialzista//Cond = Cond1 OR Cond2 OR Cond3... OR CondN //se basta che una condizione sia veraCond = Cond1 AND Cond2 AND Cond3... AND CondN //se tutte le condizioni devono essere vereCond = Cond1 OR (Cond2 AND Cond3),.... //puoi usare OR, AND per combinarle a piacere1 user thanked author for this post.
-
AuthorPosts