Il perfetto sistema di trading meccanico.

 
Ciao programmatori e codificatori, filosofi e pragmatici :) Propongo di sviluppare un'idea di creazione di un sottogioco.
Per questo condivideremo i nostri pensieri e cercheremo di scrivere insieme questa incredibile meraviglia :)
In generale, nell'ordine. Chi sono: non sono un programmatore, ma ho una grande esperienza di trading (più di 5 anni) e sono completamente soddisfatto del mio trading e dei miei guadagni. Ma anche dopo tutti questi anni, arrivo sempre alla conclusione che l'esperienza e la conoscenza dei mercati finanziari è impossibile da comprendere completamente e a fondo. C'è sempre un processo di apprendimento. Cosa cambia nel tempo? La percentuale di conclusioni intuitive e analiticamente corrette sulla direzione del mercato. Questo è probabilmente tutto. Come tutti voi ho probabilmente cercato i graal per molto tempo e mi sono convinto della loro assenza, proprio come voi. In realtà la fine della demogogia - torniamo all'argomento :).
E così. Prendiamo a priori la regola che ci sono un sacco di sistemi di trading meccanico redditizio, e in un certo periodo di tempo e per una certa valuta, mts può dare buoni risultati. Questo è il motivo per cui qualsiasi sistema meccanico che usiamo come base, la cosa principale che dovrebbe essere in esso - non i parametri di tuning di un singolo utente. Tutti i parametri devono essere calcolati indipendentemente, cioè sarà un sistema di trading meccanico automatico (AMTS) che è ottimizzato secondo il mercato volatile.
In questo ramo mi propongo di condividere i miei pensieri su questo argomento e scrivere tranquillamente alcune parti di codice, che potrebbero implementare le fasi di ottimizzazione.
Ripeto - non sono un programmatore, quindi inizierò con le cose semplici.
Divideremo i parametri autoregolabili di AMTS in principali e aggiuntivi.
Di base:
1. Numero di lotti.
2. Prendere profitto
3. Stop Loss
4. Trailing Stop
Ulteriore
5. Tutti quei parametri sulla base dei quali sarà scritto AMTS.

Come base di MM: inserire il 5% del capitale, il fattore di profitto non dovrebbe essere inferiore a 2., prendere profitto e stop loss ratio: 60/40.
1. Bene prima, il numero di lotti in molti sistemi è implementato: questa è la funzione LotOptimizator.
Supponiamo che il nostro sistema sarà intraday, rispettivamente.
2. Il Take Profit sarà calcolato come il 70% del movimento medio giornaliero del prezzo dell'ultimo mese.
3. Stop Loss, rispettivamente, come 40% del Take Profit.
Suggerisco di calcolare i livelli di Stop Loss e Take Profit alle 01:00 del mattino, dopo essere passati al giorno successivo.

In generale, se l'argomento è interessante, esprimiamo le nostre idee.
 
È possibile riaddestrare la rete neurale ad ogni nuova barra. Il compito si riduce alla costruzione del modello.
 

È possibile riaddestrare la rete neurale ad ogni nuova barra. Il compito si riduce alla costruzione del modello.

Devi aver lavorato con le reti neurali. E sapete che le reti neurali multistrato non imparano rapidamente. E se i tempi sono brevi, la rete non avrà abbastanza tempo per elaborare una soluzione.
Non ho lavorato con le reti neurali, sto solo leggendo. Quanti progressi avete fatto?

La mia idea in questa direzione è l'algoritmo genetico autoadattivo LGAP. Ci sto lavorando. Dll quasi pronto - modello.
 
Il mio imho - sarebbe una misura. Ho provato con le reti neurali. Non era molto utile, ad essere onesti. E ne ho usato uno abbastanza buono!

L'idea è sempre del trader, perché qui non si può fare a meno di un ragionamento fondamentale. E una rete sarà impegnata nell'adattamento dei dati - ha troppi gradi di libertà - l'ho verificato in pratica.
 
kniff писал (а):
Il mio imho - sarebbe una misura. Ho provato con le reti neurali. Non era molto utile, ad essere onesti. E ne ho usato uno abbastanza buono!

L'idea è sempre del trader, perché qui non si può fare a meno di un ragionamento fondamentale. E una rete sarà impegnata nell'adattamento dei dati - ha troppi gradi di libertà - l'ho verificato in pratica.

È così che dovrebbe essere. Il mercato è volatile: volatilità, volumi, range di prezzo. I parametri devono cambiare rapidamente.
 
quality писал (а):
Ciao programmatori e codificatori, filosofi e pragmatici :) Propongo di sviluppare un'idea di creazione di un sottogioco.

Personalmente, sono molto interessato a questo argomento! Pronto a partecipare in ogni modo!

A proposito di parametri di selftuning: con la base tutto è chiaro, ma cosa prendere come base per i parametri aggiuntivi, cioè, quali indicatori, livelli, canali, o cosa?

Ho avuto un'idea simile:
- mettere diversi indicatori sul grafico (ad esempio RSI, Stoch, CCI, MACD, ecc.) e prendere "approssimativamente" i valori di questi indicatori;
- poi, guardare la storia per inversioni di prezzo approssimative (cioè, dove è chiaramente visibile "qui dobbiamo comprare, qui dobbiamo vendere");
- poi scrivere i valori di tutti gli indicatori in questi punti, per comprare e vendere, in un array o in un file;
- inoltre, nell'Expert Advisor - controllare (tenendo conto della deviazione dei valori degli indicatori in percentuale dai valori ideali), cioè, per esempio, nella matrice, il valore RSI per l'acquisto è risultato essere 20, quindi, se la percentuale di innesco è 10, allora l'acquisto si innescherà da 18 a 22, così come con tutti gli altri indicatori;
- Dale, puoi (o dovresti:) anche aggiungere al controllo indicatori di attraversamento di diversi livelli o le loro linee di segnale;

Non l'ho controllato io stesso (anche se ho iniziato a scrivere un EA sperimentale, non ho ancora risultati), quindi non posso dire nulla sul fatto che funzioni o meno.
 
quality писал (а):

Questo è il modo in cui la vestibilità dovrebbe essere. Il mercato è volatile: volatilità, volumi, range di prezzo. I parametri devono cambiare rapidamente.

A proposito, i parametri di tutti gli indicatori (in questo caso, dovremo renderli anche autoregolanti, ma come, non lo so ancora). Nel mio esempio (sopra) si può provare a cambiare la percentuale di deviazione dei valori degli indicatori dall'ideale, cioè provare a seguire i cambiamenti del mercato, si può e probabilmente si dovrebbe aggiungere nuove combinazioni di valori degli indicatori all'array (file).
 
Anch'io ci ho pensato a lungo. Solo che non so da che parte affrontare la cosa. Se ci sono idee buone e fondate, sono pronto ad attuarle. Al momento sono molto interessato alle idee di pattern delineate in 'Self Learning EXPERT' in combinazione con una rete neurale.
 
kniff, mi sembra che la corrispondenza della storia sia una cosa molto, molto utile se è appropriata al TEMPO. Cioè, se il sistema si adatta abbastanza rapidamente. Quindi non c'è bisogno di averne paura. È meglio pensare a come adattarsi alla storia abbastanza velocemente. Per esempio, il sistema possiede un vettore di impostazioni X. Ogni momento del tempo t, per questo vettore esiste un valore ottimale X' che non cambia troppo rapidamente. Cioè X'(t0) è vicino a X'(t1), se t0 e t1 sono vicini. Se nel tempo dt=t1-t0, il sistema riesce a determinare correttamente il valore di X'(t0), allora al tempo t1 sarà il valore della regolazione. Cioè non ottimale (il valore ottimale sarà X'(t1)), ma abbastanza vicino a quello ottimale. A questo proposito ecco una domanda per i miei colleghi che erano abbastanza impegnati nei test (ahimè, non posso vantarmi con esso). Quanto bruscamente i sistemi ingenui (non adattivi, rigidamente regolabili) iniziano a fallire quando le condizioni di mercato cambiano? C'è una sorta di punto di transizione dalla redditività al crollo? O avviene bruscamente e catastroficamente?
 
favoritex, potresti spiegare meglio cos'è il LGAP? Non sono riuscito a trovare nulla su Yandex, tranne una menzione che è una cosa del genere. E il contesto della menzione mi sembrava interessante.
 
eugenk1:
Mi sembra che l'aggiustamento della storia sia una cosa molto, molto utile, se è adeguato al tempo. Cioè, se il sistema si adatta abbastanza rapidamente. Quindi non dovete averne paura. È meglio pensare a come adattarsi alla storia abbastanza velocemente. Per esempio, così: il sistema possiede un vettore di impostazioni X. Ogni momento del tempo, questo vettore ha un valore ottimale X', che non cambia troppo rapidamente. Cioè X'(t0) è vicino a X'(t1), se t0 e t1 sono vicini. Se nel tempo dt=t1-t0, il sistema riesce a determinare correttamente il valore X'(t0), allora al tempo t1 sarà il valore delle impostazioni. Cioè non ottimale (ottimale sarà X'(t1)), ma abbastanza vicino all'ottimale. A questo proposito ecco una domanda per i miei colleghi che erano abbastanza impegnati nei test (ahimè, non posso vantarmi con esso). Quanto bruscamente i sistemi ingenui (non adattivi, rigidamente regolabili) iniziano a fallire quando le condizioni di mercato cambiano? C'è una sorta di punto di transizione dalla redditività al crollo? O avviene bruscamente e catastroficamente?
Questo è esattamente quello che vorrei, ma no :( A quanto pare, tutto dipende dal sistema. Finora, ho l'impressione che tutto avvenga esattamente "bruscamente e catastroficamente". In generale, provare Phoenix con le impostazioni standard - prima del 13 febbraio di quest'anno 100% di perdita, e dopo - inizia bruscamente un alto livello di redditività con alta - stabilità. Immaginate la transizione inversa.
Motivazione: