Sottosistema "Gestione Patrimoniale"

 

Il problema, di cui mi propongo di parlare, è stato più volte discusso in questo forum, nelle sue varie manifestazioni, e sono stati proposti vari approcci alla sua soluzione. Ci ritorno di nuovo, ma già aggiungendo alcune specifiche.

Convenzioni terminologiche

Prima di spiegare la situazione e fare domande, farò alcune riserve sull'uso di alcuni termini. Esiste un'intera scienza: la "gestione patrimoniale", che combina con successo teorie come la gestione del rischio, la gestione del capitale, la gestione degli investimenti, la teoria della scelta e molte altre, ma porta le specificità inerenti alle imprese e alle banche. La teoria presuppone un'interpretazione ampia del concetto stesso di "asset", tuttavia, questo non è così importante. Senza diffondere i miei pensieri lungo l'albero, dirò che il termine mi è piaciuto e gli approcci più generali di questa teoria hanno qualche somiglianza con il commercio. Ma non è questo il punto.

I termini “flusso dell'onda” e “struttura dell'onda” utilizzati più avanti nel testo sono simili al termine “zigzag”, più precisamente, le loro differenze non influiscono sulle questioni in discussione.

Formulazione del problema

A prima vista, la dichiarazione delle attività è molto semplice: raggruppare le funzionalità di pianificazione, esecuzione e controllo ottimali delle operazioni di negoziazione in un sottosistema separato, tenendo conto della valutazione del rischio e delle restrizioni esistenti, come i depositi disponibili e le regole di negoziazione di specifici controller di dominio. Tale idea è nata sulla base del presupposto di una possibile standardizzazione dei dati di input e di una buona separazione della varietà delle strategie di trading dalle proprietà statistiche del loro comportamento.

Il sottosistema (o modulo) discusso di seguito come componente dell'esperto è "Asset Management". Per una maggiore chiarezza di rappresentazione del funzionamento dell'intero sistema, ricorreva alla potenza artistica della parola pittorica. La figura seguente mostra l'interazione dei processi ei principali flussi informativi. È chiaro che il processo verrà successivamente impacchettato in una sorta di modulo, e quindi, più avanti nel testo, non seguirò da vicino l'uso, in generale, dei diversi concetti di "processo" e "modulo". Non importa quanto sia importante ora. In base alla progettazione, è più probabile che l'immagine si riferisca a una notazione arbitraria, ma ho cercato di aderire all'IDEF. Non sto ancora valutando l'implementazione tecnica e i requisiti per i formati dei dati, vorrei prima capire cosa voglio. E voglio almeno questa cosa (concettualmente, la documentazione di lavoro è ancora un po' più complicata):

Qualche parola va detta sul sistema di previsione, anche se non è il fulcro di questo argomento. Lo sviluppo del sottosistema Wave Structure Forecast è diviso in tre fasi principali e, poiché la prima fase è stata completata di recente, puoi già vedere come tutto "non dovrebbe funzionare" :o). La previsione è dimostrata sull'esempio di un "topo da laboratorio": EURUSD, ore, (H+L)/2. Il fatto è contrassegnato in nero, le letture future sono in grigio chiaro e lo zigzag combinato è contrassegnato in grigio scuro, costruito dopo il fatto con segmenti "attaccati" dei movimenti d'onda futuri calcolati:

È troppo presto per fare trading con una tale previsione, ma non è ancora pianificata: i lavori sul sottosistema non sono stati completati. I prossimi passaggi di sviluppo aggiungeranno accuratezza, migliore risoluzione e livelli predittivi più solidi alla previsione. Forse, il tempo di completamento delle onde sarà determinato in modo più accurato. Con rammarico, dobbiamo ammettere che MathCAD non è lo strumento migliore per la grafica dei descrittori, e ancor di più per l'animazione, quindi è andata così. Non tutte le informazioni sulla previsione vengono visualizzate.

Successivamente, descriverò in dettaglio i flussi di informazioni tra i processi dell'esperto:

Previsione per strumenti . Si presume che il sottosistema riceva, come dato di input, una previsione del movimento dello strumento sotto forma di sequenza di estremi locali (in altre parole uno ZigZag), contenente i livelli calcolati dello strumento e il tempo da raggiungere loro. L'aspetto della previsione universale per lo strumento è presentato come segue:

La linea tratteggiata verticale rappresenta la posizione "ora" per ciascuna previsione utensile. Al momento, le onde segnate in nero sono già un fatto compiuto. La previsione include onde a partire da "A", "B", "C" ecc. L'onda "A", evidenziata da una linea tratteggiata, affina l'onda finale dello ZigZag costruito secondo la storia. Ci possono essere due opzioni: o la previsione presuppone che l'onda sia completata e che la sua cima sia data storica o che l'onda si svilupperà ancora, raggiungendo un nuovo livello in futuro.

In generale, questo non è importante, ma dovrà essere preso in considerazione quando ci si sposta tra le coordinate quando implementato in MT. Le onde evidenziate in grigio chiaro continuano la previsione dello sviluppo dello strumento, allontanandosi nel futuro.

Strumenti di trading . Qui tutto è chiaro: i dati operativi per ogni strumento negoziato vengono trasmessi al sottosistema, che può essere teoricamente utilizzato per controllare e modificare le transazioni se tali procedure vengono eseguite online senza utilizzare livelli SL e TP.

Numero di onde previste . Per il modulo in esame, questo parametro può essere ottenuto contando il numero di onde in ingresso. In altre parole, questo parametro è impostato a livello globale (al di fuori del modulo sviluppato) e dipende principalmente dalla qualità della previsione per ogni numero d'onda di previsione (livello di profondità di previsione). Prendo atto che impostando la quantità uguale a uno, il sistema, infatti, specificherà solo l'estremo di corrente, cioè estremo dell'onda attualmente formata. Si presume (almeno è mia intenzione) che il numero di onde previste possa essere qualsiasi valore. Ma per ora, limito il flusso d'onda previsto a poche onde.

Restrizioni DC . Un insieme di parametri dell'ambiente di trading specifici per ogni controller di dominio specifico. I parametri sono elencati. Non posso ancora dire con certezza che questo o quel parametro sarà necessario nel modello di gestione patrimoniale, ma lascia che siano un pugno nell'occhio per ora:

  • Deposito minimo
  • Restrizioni sull'impostazione dei livelli SL e TP
  • Leva massima
  • Il lotto minimo e la fase ammissibile del suo cambio
  • Volume massimo totale della posizione
  • Numero totale massimo di ordini
  • Spostamento di posizioni durante la notte
  • Numero ed elenco degli strumenti
  • Metodo di citazione
  • Tempo massimo di deposito e prelievo

Forse ho dimenticato qualcosa che è intuitivamente utile? :di)

Statistiche della struttura d'onda per ogni strumento . Informazioni statistiche importanti che possono essere utili per la gestione del rischio:

  • la frequenza di occorrenza di ciascun segmento (statistiche su lunghezza, intervallo, durata)
  • la frequenza di apparizione della struttura dell'onda, (comparsa simultanea delle onde "A", "B", "C", "D", "E", "F" ... secondo la classificazione corrispondente)

Modello di gestione patrimoniale . È qui che sta l'inconveniente, è chiaro che dovrebbe essere un modello del genere, ma finora non capisco esattamente cosa dovrebbe essere.

Funzionalità di base

La funzionalità non è ancora strutturata, ma è data come un elenco generale, senza processi, relazioni e logiche.

Chiarimento della fine dell'onda

Il compito formulato nel titolo è generalmente correlato all'ottenimento di informazioni sulla base delle quali verranno prese le decisioni finali di trading, ad esempio il più ovvio è il calcolo dei livelli SL e TP. Ci sono due opzioni fondamentalmente diverse qui:

  • (Opzione 1) il sottosistema di previsione produce la struttura d'onda già calcolata definitivamente
  • (Variante 2) il sottosistema di previsione fornisce solo i punti teorici del completamento delle onde. Si presume che i veri punti terminali siano da qualche parte nelle vicinanze e debbano ancora essere valutati.

Per ora, mi attengo all'opzione 2. Tale valutazione può essere effettuata sulla base del calcolo della zona di completamento dell'onda e della valutazione "punto" del completamento dell'onda all'interno di questa zona. La zona stessa può essere calcolata in diversi modi, ad esempio utilizzando la previsione e le statistiche sugli errori effettivi. Come gradazione di tale zona, si può prendere l'errore quadratico medio. C'è un altro modo, almeno il mio modello ti permette di fare un preventivo alternativo.

Una stima puntuale del completamento di un'onda all'interno della zona può essere ottenuta sulla base della ricerca e dell'analisi dei punti estremi, utilizzando i principi delineati nei seguenti articoli:

- "Un modo per costruire livelli di supporto e resistenza"

- 'Mostra i livelli di supporto e resistenza'

L'immagine sotto mostra condizionatamente le aree di funzioni, designate come X e Y, limitate dalla dimensione della zona. Tali funzioni possono essere la "densità per livelli" dello strumento o la stima della frequenza delle lunghezze e delle durate dei segmenti d'onda. In un caso, devi rispettare i minimi, nell'altro, rispettivamente, i massimi in queste zone:

Pertanto, la struttura dei dati che descrive il flusso d'onda previsto assume infine la forma seguente: vengono aggiunte le stime delle zone di completamento del movimento delle onde e una stima puntuale del livello dello strumento all'interno di ciascuna zona:

Calcolo del piano di trading

Il sottosistema “Gestione Patrimoniale”, in accordo con alcune normative, riceverà i dati previsionali per ciascuno strumento: dopo aver inviato un segnale di richiesta di previsione, ogni strumento riceverà previsioni a zig-zag con caratteristiche probabilistiche (di frequenza) dei segmenti costituenti all'ingresso della gestione patrimoniale. Si richiede infatti di trovare la “via di conclusione delle operazioni” più ottimale, tenendo conto del livello del deposito, delle operazioni correnti, della loro correzione, dei rischi e dei vincoli del CC. In altre parole, eseguire un "certo" calcolo di un "certo" piano di operazioni di trading (finora così "nebbioso"). Anche il criterio dell'ottimalità è una questione seria, dove si trova il giusto equilibrio tra profitto e rischio. :di)

Diventa anche chiaro da quanto sopra che il piano delle operazioni di trading nel caso generale può differire dal processo a onda iniziale (zigzag). Tale situazione può verificarsi non solo a causa della procedura di affinamento del completamento delle onde, ma anche, ad esempio, quando si attraversano le zone di errore di terminazione rms, come mostrato nella figura seguente:

Nel caso descritto, potrebbe essere necessario correggere le transazioni (rifiuto di una transazione intermedia) o, in risposta, potrebbe esserci una diminuzione del lotto su questo tratto di percorso. È difficile dirlo con certezza, improvvisamente gli studi dimostreranno che questi piccoli zigzag sono i più statisticamente stabili e ha senso impostare un numero maggiore di lotti su di essi - finora, tutto è molto teorico.

Nel caso generale, sulla base di un piano di trading, diventa possibile pianificare, in qualche modo, dei “flussi di cassa”. Naturalmente, questo ha senso solo per strategie basate su (o quasi sulla base di) una previsione in una forma o nell'altra.

Esecuzione di operazioni commerciali

Molto dipenderà dalla logica specifica di elaborazione del piano di trading. Intuitivamente, sembra chiaro, ma sono necessari maggiori dettagli.

Disponibilità di funzioni di servizio

Questo è il nome generico per le caratteristiche specifiche che sorgono quando si fa trading in modalità automatica nell'ambiente MT. La prima cosa che ho ricordato:

  • verifica dell'integrità dei dati storici
  • gestione degli errori che si verificano durante le operazioni di trading

Colleghi, se avete qualcosa da aggiungere (per l'azienda), scrivete, altrimenti non capisco proprio in MT.

Di cosa sto chiedendo

Ho provato e spero che quanto sopra sia meno chiaro. O forse puoi usare:

  • programmazione matematica (programmazione lineare e non lineare): in sostanza, quanto sopra si presenta come un classico problema di ottimizzazione, teoria ben sviluppata e molti sviluppi in quest'area
  • catene di Markov
  • forse una combinazione di questi approcci in una logica più complessa, potrebbe essere possibile valutare i rischi con catene di Markov ed eseguire l'ottimizzazione mediante programmazione matematica (e perché no?). Spero che l'idea di incrociare un riccio con un serpente meriti già un Premio Dr. Schnobel separato e onorario.

Mi sembra che, sulla base delle teorie e degli approcci selezionati dall'intera varietà, sarà possibile sviluppare un modulo di gestione patrimoniale universale molto efficace in grado di massimizzare davvero i profitti (o ridurre al minimo le perdite, tutto dipende dalla definizione di chi è ottimista è). È così? Forse qualcuno ha già intrapreso questa strada e può fare luce sulla situazione.

E l'eterna domanda, se è possibile, allora come?

Non uno specialista nel campo della matematica, ma sono apparsi alcuni pensieri sull'uso delle catene di Markov e cercherò di esprimerli nel prossimo futuro. Per quanto riguarda la programmazione matematica, c'è un vero profano, e anche se non ho letto nulla, tutto è ancora avanti. Ma come riferimento per coloro che potrebbero non sapere affatto cosa sia la programmazione matematica, ecco una citazione generale:

Линейное программирование – целевая функция линейна, а множество, на котором ищется экстремум целевой функции, задается системой линейных равенств и неравенств. В свою очередь в линейном программировании существуют классы задач, структура которых позволяет создать специальные методы их решения, выгодно отличающиеся от методов решения задач общего характера. Так, в линейном программировании появился раздел транспортных задач.

Programmazione non lineare : la funzione obiettivo e i vincoli non sono lineari. La programmazione non lineare è solitamente suddivisa come segue: Programmazione convessa - la funzione obiettivo è convessa (se si considera il compito della sua minimizzazione) e l'insieme su cui viene risolto il problema estremale è convesso. Programmazione quadratica: la funzione obiettivo è quadratica e i vincoli sono uguaglianze e disuguaglianze lineari.

Problemi Multiestremi . Qui, di solito si individuano classi specializzate di problemi che si incontrano spesso nelle applicazioni, ad esempio problemi di minimizzazione su un insieme convesso di funzioni concave.

Se la correttezza dell'approccio prescelto viene confermata nel processo di ricerca di laboratorio, allora il passo logico successivo sarà lo sviluppo di specifiche tecniche per lo sviluppo di un "sistema di programmazione lineare" da implementare. Non escludo, e spero che l'argomento designato possa interessare non solo a me.

Buona fortuna a tutti e zigzag di passaggio :o)))

 
Interessante.
 

La struttura dell'onda, quale metodo

stai usando o di chi è la teoria?

E se puoi essere più specifico.

 
A Sol

Интересно.

Breve ma succinto. :о)

Rileggendo il mio post mi sono reso conto che avrebbe dovuto essere ben riscritto o rimosso del tutto. Avevo troppa fretta e sono finito accartocciato e impacciato. Ma non importa. Un tale sottosistema universale è davvero interessante (almeno due di noi ne sono interessati :), ma solo per gli Expert Advisors, che hanno una previsione chiara, almeno in qualche modo, per esempio TP e SL.

Forse non ho guardato tutto sul forum, ma per lo più si suggerisce l'uso di catene di Markov (CM) per prevedere il processo di citazione. Non sono un matematico, ma nella mia umile comprensione una tale applicazione non ha alcun senso. I CM in generale sono lontani da processi di questa natura. E il più delle volte, il discorso gira intorno alla matrice di transizione piuttosto che al modello del processo stesso. Gli stati e le transizioni tra essi sono un elemento importante, ma non il più importante.

Apparentemente, il CM aiuterà a risolvere i problemi di ottimizzazione del percorso stesso per ordini (la loro scelta tenendo conto della natura probabilistica). E sembra che le proprietà di questo "macroprocesso" siano molto simili a quelle del CM. Inoltre, ci sono ogni sorta di sottigliezze - per esempio, la previsione ha mostrato un forte movimento nel futuro (non ora). E in questo caso può avere senso rifiutare un gran numero di accordi su altri strumenti ora e concentrare la risorsa (deposito) sul movimento previsto. Se il forte movimento è confermato - il programma sarà pieno. In caso contrario, verrà attivato lo SL che, di nuovo, può essere più accettabile di alcuni degli ordini SL attivati in alternativa.

Ma difficilmente possiamo estendere l'ottimizzazione in pieno e includere (o almeno considerare solo) l'ambiente commerciale del DC. Elementi di programmazione lineare saranno probabilmente necessari qui.

"Beh, è così kA-A-A-tsa..." (C)

a sator

Struttura dell'onda, con quale metodo

usi o la teoria di chi?

E se puoi essere più specifico.

Ho discusso il concetto del sistema e alcuni dei suoi componenti su un forum chiuso. Ora, non sono pronto a parlarne apertamente. La teoria è completamente mia.

 

Interessante. Dovrò leggerlo attentamente a casa stasera.

E invitare coloro che hanno sviluppato qualcosa di simile a discutere...

 
nen >> :

Interessante. Dovrò leggerlo attentamente a casa stasera.

E invitare alla discussione coloro che hanno sviluppato qualcosa di simile...

Non sono riuscito a risolvere il mio problema, descritto nel primo post, ma si è rivelato non così banale. In generale, sto pensando.

Ma come studio opzionale delle catene di Markov e una migliore comprensione di esse, si può provare a sviluppare un sottosistema per la previsione della struttura delle onde. Prevedere il prezzo direttamente con loro non ha senso, ma possiamo avvicinarci in modo diverso - isolando gli stati, se posso dirlo, di un ordine superiore.


Non credo che sia un'idea completamente nuova prendere uno zigzag come alternativa. Successivamente, raccogliete le statistiche dei parametri per i segmenti a zig zag. La prima cosa che viene in mente è la lunghezza del segmento, le sue proiezioni sugli assi X e Y (tempo e diffusione, rispettivamente), forse le aree formate dalla catena di segmenti. Sulla base delle statistiche sviluppare regole di classificazione. Come criterio di classificazione, si possono prendere frequenze statistiche e ripercorrere lo zigzag, facendo allo stesso tempo una classificazione di ogni segmento.


Infatti, ogni classe selezionata di un segmento a zigzag sarà il suo stato. Secondo le prime approssimazioni, ci dovrebbero essere da tre a nove di questi stati. Procedendo dalle frequenze statistiche, gli intervalli per ogni parametro dovrebbero essere selezionati in modo tale che i valori risultanti delle frequenze siano significativi e differiscano notevolmente l'uno dall'altro. Allora sarà facile fare un grafico degli stati e calcolare la matrice di transizione tra gli stati. Fin qui intuitivamente, ma mi sembra che solo il segmento attuale e quello che lo segue possano essere previsti con l'aiuto del CM.


Avendo tutto questo, possiamo già trarre alcune conclusioni su una strategia accettabile o almeno avere una nozione statistica delle situazioni in cui sarebbe meglio non fare trading. Se funziona, sarà possibile ottenere un modello di previsione più avanzato, ad esempio, una formula empirica di aspettativa matematica della classe futura o qualcosa del genere.


Ogni stato del segmento limiterà il suo completamento a qualche area. L'importante è che la classificazione utilizzata ci permetta di procedere alla stima della proiezione dei segmenti previsti sugli assi X e Y. Resta solo da trovare il punto stimato di inversione locale all'interno dell'area di completamento dell'onda delineata. E può essere calcolato sia con il metodo descritto sopra che usando i livelli di Murray.


Può darsi che questo metodo di previsione dia un buon risultato che sarà statisticamente provato senza trucchi di fantasia. È come se prima di provare non lo saprai mai.

 
grasn писал(а) >>

...Tutto ciò che rimane è trovare il punto di rotazione locale previsto all'interno dell'area delineata...

Se trovi questo, tutto il resto che hai scritto è molto facile da collegare.

 

era in rete da qualche parte

 

a Prival

Найдете вот это, все остальное что Вы написали, очень легко приложиться

CiaoPrival! Devi aver dimenticato il tuo vecchio avversario :o) Ma non importa, sopravviverò alla diplomazia:


Al vostro sguardo attento non dovrebbe essere sfuggito il fatto che sto cercando di padroneggiare le catene di Markov e la programmazione lineare per scopi leggermente diversi, cioè la gestione degli asset, cioè trovare e selezionare la migliore decisione di trading, piuttosto che la previsione stessa. Quello che ho proposto è una sorta di studio della teoria nel quadro dello sviluppo opzionale. E rilevo i pivot point in un modo completamente diverso, come ho scritto e dimostrato sopra.


E per quanto riguarda "tutto il resto si adatta" - vi sbagliate di grosso. Basta fare riferimento alla saggezza degli antichi cinesi e alle mie osservazioni :o): Non troverete mai un gatto nero in una stanza buia, specialmente in quei momenti in cui non c'è. Affidatevi completamente a me in questa valutazione esperta - ho un gatto nero in casa e credetemi, so di cosa sto parlando. :о)))


a njel

Sì, conosco questo prodotto e ho un'idea della logica con cui funziona. Cancellatelo dal vostro computer e non usate affatto le teorie dell'onda sinistra e destra. Usate solo il vostro.

Ma grazie per la foto, molto bella. Mi piace molto come artista. :о))

 
grasn

A mio parere non è necessario cercare approcci comuni - teoria dell'ottimizzazione, catene di Markov

La ragione principale è che la scelta dell'asset non è un problema dell'azienda.

Le catene di Markov sono la chiave per stabilire le priorità.

Ho un compito simile, anche se non sono ancora arrivato ai dettagli, solo un po'.

Ho pensato a come decidere.


Supponiamo di avere un insieme di strumenti finanziari (attività) e segnali per ogni strumento. I segnali sono validi per un certo tempo, per esempio, sono generati all'apertura di una barra giornaliera e rimangono validi fino all'inizio della barra successiva. Un punto di entrata viene cercato all'interno della barra per ogni simbolo in base al segnale. Se ci sono diversi segnali allo stesso tempo

per diversi simboli allo stesso tempo, a quale dovrebbe essere data priorità? L'unico

Il primo? O aspettare quello con maggiori probabilità di esito favorevole?

Penso che sia necessario raccogliere statistiche per ogni strumento separatamente e poi secondo

Userò queste statistiche per provare a cercare qualche optimum.



 
njel >> :

da qualche parte in rete

Questa è una previsione statistica delle N barre che precedono il movimento della MA (linee tratteggiate lisce a destra dell'ultima barra)

e un valore statistico dei confini in cui è più probabile che il prezzo si muova (linee tratteggiate verticali

linee accanto a ogni barra prevista per la MA veloce)