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
Ho provato a creare il mio programma di calcolo del portafoglio azionario. Ottimizzazione con il metodo minimax (modificato per le citazioni).
Due portafogli sono presi per il calcolo: Long - solo per le posizioni lunghe e Short - solo per le posizioni corte. Si presume che 100 dollari debbano essere assegnati al portafoglio lungo e 100 dollari al portafoglio corto. Ecco i risultati:
Nota:
Tutti i calcoli sono basati sui prezzi netti di chiusura, esclusi spread, swap e commissioni.
La prima colonna è la proporzione in $ per le azioni (o per analogia, come investimento percentuale).
Seconda colonna - profitto
Terza colonna - strumento finanziario (azioni)
Totale - profitto totale del portafoglio.
All'inizio non riuscivo a capire perché l'ottimizzazione dovesse includere nel portafoglio azioni consapevolmente perdenti, cioè il cui payoff atteso è negativo. Poi ho scoperto che se queste azioni in perdita venissero rimosse, il risultato finale aumenterebbe sicuramente, ma porterebbe a profondi prelievi di capitale.
al neutrone
Ho recuperato i miei archivi, è vero, l'utilizzo di un tale modello lineare è una stronzata totale. Non funziona niente. Quindi non condivido il suo "malsano" ottimismo.
a Reshetov
Questo è interessante, ma non riesco a capire cosa sia stato fatto. Sembra un "rospo". E non posso nemmeno paragonare le due frasi "Ho cercato di creare il mio programma" e "All'inizio non riuscivo a capire perché l'ottimizzazione include la perdita consapevole di azioni nel portafoglio". Hai appena usato qualche modello di ottimizzazione esterno o qualche "scatola chiusa con qualche intelligenza infilata dentro" - diciamo, HC o GA. Ma ancora non capisco perché "l'algoritmo da solo" spinge qualcosa da qualche parte. Se questo è il NS, allora su quali dati sono stati addestrati (cioè dove hanno ottenuto il maggior "punteggio ottimale").
Calcolato sulla base di 130 barre di mezz'ora, cioè per le ultime due settimane - 10 sessioni di trading in 35 strumenti finanziari (32 azioni del Dow Jones Industrial Average e 3 azioni indice) utilizzando il criterio di Laplace migliorato.
L'ottimizzazione implica un criterio tra il massimo rendimento di ogni dollaro investito e il minimo prelievo del deposito. Perciò non ci si deve sorprendere se si aggiungono al portafoglio alcune attività che erano note per subire perdite durante il periodo esaminato, dato che il loro ruolo è di copertura, cioè di attenuazione del rischio di un calo del deposito. Le attività in perdita e quelle redditizie nel portafoglio avranno sempre la massima correlazione negativa. Tuttavia, non necessariamente attività in perdita e redditizie. Se il portafoglio è composto solo da attività redditizie, la correlazione negativa tra attività ad alto rendimento e a basso rendimento è ancora presa in considerazione. In questo caso le attività a basso rendimento svolgeranno un ruolo di copertura per le attività ad alto rendimento.
I calcoli non tengono conto di: spread, commissioni di intermediazione, dividendi e swap di intersessione. Tutti i calcoli sono basati sul prezzo Bid degli asset, cioè senza leva finanziaria.
Si suppone che un investitore abbia 100 dollari, che dovrebbero essere investiti in modo ottimale in attività del mercato azionario americano - la prima colonna della tabella. Il numero risultante deve essere diviso aritmeticamente per il valore del bene per ottenere il numero di azioni richiesto.
Contrariamente ad altre valutazioni, in questo caso non si considera solo la strategia Buy and Hold, ma anche la vendita allo scoperto di attività.
Tempo di calcolo del portafoglio: Sun Dec 14:07:06 PKT 2008 +5 GMT
(o dollari USA,
se intendete investire
100 dollari)
basato su
10 precedenti sessioni di trading
Vendita allo scoperto
Vendita allo scoperto
Vendita allo scoperto
Vendita allo scoperto
Vendita allo scoperto
Vendita allo scoperto
al neutrone
Questo è interessante, ma non riesco a capire cosa sia stato fatto. Sembra un "rospo".
Non importa su cosa sia fatto. Infatti il risultato finale è in un'applicazione Java. Ma può essere implementato in MQL4 con una rilevante perdita di velocità, che al momento non è del tutto accettabile, poiché è difficile inserire i calcoli nel lasso di tempo tra le sessioni di trading. Finora l'implementazione è in due linguaggi di programmazione: l'applicazione Java lancia il terminale MT4 specificando l'Expert Advisor in MQL4 sulla linea di comando. L'Expert Advisor scarica le quotazioni e le pre-elabora. Memorizza i risultati in un file. Dopo l'elaborazione dello script, il terminale viene scaricato automaticamente e il programma Java riceve il codice di spegnimento del terminale e prende i dati dal file ed esegue l'ottimizzazione. I risultati vengono poi visualizzati nella finestra dell'applicazione e nel file come pagina web.
al neutrone
Era solo un modello di ottimizzazione esterno o una specie di "scatola chiusa con l'intelligenza infilata dentro" - diciamo, HC o GA? Ma ancora non capisco perché "l'algoritmo da solo" spinge qualcosa da qualche parte. Se è NS, su quali dati sono stati addestrati (cioè dove hanno ottenuto il più "ottimale conto")
Si tratta dell'ottimizzazione della matrice di pagamento per criteri. Cioè non GA, dato che GA trova un solo estremo e quindi è una soluzione adeguata. L'asset migliore, cioè l'unico all'estremo del rendimento, può essere trovato molto più facilmente, cioè dividere il profitto per il periodo in esame per il prezzo iniziale dell'azione - oscillatore momentum e investire lì dove si ottiene il massimo risultato. Cioè l'ottimizzazione con algoritmi aggiuntivi per trovare il massimo rendimento è ridondante, perché c'è solo una soluzione. Per quanto riguarda le reti neurali, non ha nemmeno senso, perché non è affatto chiaro cosa dare in input.
L'ottimizzazione entra in gioco quando oltre alla massima redditività dobbiamo considerare il rischio di drawdown. Considerando quanto sopra e il teorema minimax, la soluzione ottimale trovata può non essere l'unica (il teorema afferma che c'è almeno una soluzione).
a Reshetov
Lottando con la crisi, ho perso la tua risposta :o). Grazie per il chiarimento.
...Т.е. оптимизация дополнительными алгоритмами для поиска максимальной доходности излишняя, поскольку решение единственное... Смысл оптимизации проявляется тогда, когда необходимо помимо максимальной прибыльности еще и учитывать риск просадок.
Ho scritto che prenderò in considerazione molti più parametri tra cui non solo il drawdown ma anche il rischio dell'operazione stessa. E il modello è in effetti più complesso - nell'immagine ho mostrato una <parte di segmenti>:
I clienti sono "sequenzialmente" in diversi strumenti, con una diversa correlazione delle loro caratteristiche (tutta quella varietà descritta prima) e tempi di inizio. E comincia già ad avere senso - tenere conto del futuro profitto "teorico" di ogni affare nell'ottimizzazione. Quindi, la ricerca di quello ottimale è abbastanza rilevante e sembra che LP sia l'unico ed efficace strumento. Finora, senza molte spiegazioni (sembra ovvio), ma qui appare un tale grafico dei commerci previsti (in un certo senso, molto condizionatamente):
Dove la ramificazione è il processo decisionale per l'apertura di nuove transazioni (compreso lo "straripamento" del profitto per "canali", o meglio per attività). Beh, è una lunga storia, per ora questa è breve. Spero (se il tempo è buono) di pubblicare presto studi più dettagliati.
Anche per le reti neurali non ha senso, perché non è chiaro cosa dare in pasto agli input.
Sono d'accordo
Ho riletto il mio post e ho deciso di chiarire l'aspetto del grafico per sicurezza. A questo punto tutto dovrebbe essere chiaro:
Ed è su questo che sto eseguendo LP - risultati molto interessanti :o)
L'argomento è ancora rilevante? È stata considerata la programmazione per obiettivi (multicriteri) per la gestione ottimale delle risorse? (invece di lineare)
Certo che lo è, se hai qualcosa da dire, nel senso di offrire.
Un problema di programmazione obiettivo è un problema sulla composizione ottimale, sotto determinati vincoli. Cioè, se ci sono diverse funzioni obiettivo lineari, possibilmente conflittuali, allora la programmazione degli obiettivi può essere usata per trovare una soluzione di compromesso. Non ho usato questo metodo per la gestione delle risorse, ma ho pensato che potrebbe essere usato anche qui. Si differenzia dalla programmazione lineare in quanto la programmazione lineare implica una TF, mentre la programmazione degli obiettivi ne implica diverse.