Sous-système "Gestion des actifs"

 

Le problème, dont je me propose de parler, a été discuté à plusieurs reprises dans ce forum, dans ses diverses manifestations, et diverses approches de sa solution ont été proposées. J'y reviens encore, mais en ajoutant déjà certaines spécificités.

Conventions terminologiques

Avant d'expliquer la situation et de poser des questions, je ferai quelques réserves sur l'utilisation de certains termes. Il existe toute une science - la "gestion d'actifs", qui combine avec succès des théories telles que la gestion des risques, la gestion du capital, la gestion des investissements, la théorie des choix et bien d'autres, mais porte les spécificités inhérentes aux entreprises et aux banques. La théorie suppose une interprétation large du concept même d '«actif», mais ce n'est pas si important. Sans répandre mes pensées le long de l'arbre, je dirai que j'ai aimé le terme, et les approches les plus générales de cette théorie ont des points communs avec le commerce. Mais ce n'est pas le sujet.

Les termes «flux d'onde» et «structure d'onde» utilisés plus loin dans le texte sont similaires au terme «zigzag», plus précisément, leurs différences n'affectent pas les questions en discussion.

Formulation du problème

À première vue, l'énoncé de tâche est très simple - regrouper les fonctionnalités de planification, d'exécution et de contrôle optimaux des opérations de négociation dans un sous-système distinct, en tenant compte de l'évaluation des risques et des restrictions existantes, telles que les dépôts disponibles et les règles de négociation de CD spécifiques. Une telle idée est née sur la base de l'hypothèse d'une normalisation possible des données d'entrée et d'une bonne séparation de la variété des stratégies de trading des propriétés statistiques de leur comportement.

Le sous-système (ou module) décrit ci-dessous en tant que composant de l'expert est "Gestion des actifs". Pour une plus grande clarté de représentation du fonctionnement de l'ensemble du système, il recourt à la puissance artistique de la parole picturale. L'image ci-dessous montre l'interaction des processus et les principaux flux d'informations. Il est clair que le processus sera par la suite conditionné dans une sorte de module, et donc, plus loin dans le texte, je ne surveillerai pas de près l'utilisation, en général, des différents concepts de « processus » et de « module ». Peu importe à quel point c'est important maintenant. De par sa conception, l'image est plus susceptible de faire référence à une notation arbitraire, mais j'ai essayé d'adhérer à IDEF. Je n'envisage pas encore la mise en œuvre technique et les exigences relatives aux formats de données, je voudrais d'abord comprendre ce que je veux. Et je veux au moins ce truc (conceptuellement, la documentation de travail est quand même un peu plus compliquée) :

Il convient de dire quelques mots sur le système de prévision, bien qu'il ne soit pas l'objet de ce sujet. Le développement du sous-système Wave Structure Forecast est divisé en trois étapes principales, et puisque la première étape a été récemment achevée, vous pouvez déjà voir comment tout cela "ne devrait pas fonctionner" :o). La prévision est démontrée sur l'exemple d'un « rat de laboratoire » : EURUSD, heures, (H+L)/2. Le fait est marqué en noir, les lectures futures sont en gris pâle et le zigzag combiné est marqué en gris foncé, construit après coup avec des segments "attachés" des mouvements d'onde futurs calculés :

Il est trop tôt pour échanger avec une telle prévision, mais ce n'est pas encore prévu - les travaux sur le sous-système ne sont pas terminés. Les prochaines étapes de développement ajouteront de la précision, une meilleure résolution et des niveaux prédictifs plus robustes aux prévisions. Peut-être que le moment de l'achèvement des vagues sera déterminé avec plus de précision. Avec regret, nous devons admettre que MathCAD n'est pas le meilleur outil pour les graphiques de descripteurs, et encore plus pour l'animation, donc il s'est avéré que cela s'est passé. Toutes les informations sur les prévisions ne sont pas affichées.

Ensuite, je décrirai en détail les flux d'informations entre les processus de l'expert :

Prévision par instruments . On suppose que le sous-système reçoit, comme données d'entrée, une prévision du mouvement de l'instrument sous la forme d'une séquence d'extremums locaux (en d'autres termes, un ZigZag), contenant les niveaux calculés de l'instrument et le temps pour atteindre eux. L'apparence de la prévision universelle pour l'instrument est présentée comme suit :

La ligne pointillée verticale représente la position "maintenant" pour chaque prédiction d'outil. Pour le moment, les vagues marquées en noir sont déjà un fait accompli. La prévision comprend des vagues commençant par "A", "B", "C" etc. La vague "A", mise en évidence par une ligne pointillée, affine la vague finale du ZigZag construit selon l'histoire. Il peut y avoir deux options pour cela : soit les prévisions supposent que la vague est terminée et que son sommet est constitué de données historiques, soit la vague se développera encore, atteignant un nouveau niveau dans le futur.

En général, ce n'est pas important, mais il faudra en tenir compte lors du déplacement entre les coordonnées lorsqu'il est implémenté dans MT. Les vagues surlignées en gris pâle continuent la prévision du développement de l'instrument, reculant dans le futur.

Instruments de négociation . Tout est clair ici : les données opérationnelles de chaque instrument négocié sont transmises au sous-système, qui peut théoriquement être utilisé pour contrôler et modifier les transactions si ces procédures sont effectuées en ligne sans utiliser les niveaux SL et TP.

Nombre de vagues prévues . Pour le module en question, ce paramètre peut être obtenu en comptant le nombre d'ondes dans l'entrée. En d'autres termes, ce paramètre est fixé au niveau global (en dehors du module développé) et dépend principalement de la qualité de la prévision pour chaque numéro de vague de prévision (niveau de profondeur de prévision). Je note qu'en fixant la quantité égale à un, le système, en fait, ne spécifiera que l'extremum actuel, c'est-à-dire extremum de la vague actuellement formée. On suppose (du moins c'est mon intention) que le nombre de vagues prédites peut être n'importe quelle valeur. Mais pour l'instant, je limite le débit de vagues prévu à quelques vagues.

Restrictions CC . Un ensemble de paramètres d'environnement de trading spécifiques à chaque DC spécifique. Les paramètres sont listés. Je ne peux pas encore dire avec certitude que tel ou tel paramètre sera nécessaire dans le modèle de gestion d'actifs, mais laissez-les être une horreur pour l'instant :

  • Dépôt minimal
  • Restrictions sur la définition des niveaux SL et TP
  • Effet de levier maximal
  • Le lot minimum et l'étape autorisée de son changement
  • Volume total maximal de la position
  • Nombre total maximum de commandes
  • Changer de position dans la nuit
  • Nombre et liste d'outils
  • Méthode de cotation
  • Délai maximum de dépôt et de retrait

Peut-être que j'ai oublié quelque chose qui est intuitivement utile? :à propos)

Statistiques de structure d'onde pour chaque instrument . Informations statistiques importantes qui peuvent être utiles pour la gestion des risques :

  • la fréquence d'occurrence de chaque segment (statistiques sur la longueur, la portée, la durée de vie)
  • fréquence d'apparition de la structure ondulatoire, (apparition simultanée des ondes "A", "B", "C", "D", "E", "F"... par la classification correspondante)

Modèle de gestion des actifs . C'est là que se trouve le hic, il est clair qu'un tel modèle devrait être, mais jusqu'à présent, je ne comprends pas très bien ce qu'il devrait être exactement.

Fonctionnalité de base

La fonctionnalité n'est pas encore structurée, mais est donnée sous forme de liste générale, sans processus, relations et logique.

Clarification de la fin de la vague

La tâche formulée dans le titre est généralement liée à l'obtention d'informations sur la base desquelles les décisions commerciales finales seront prises, par exemple, la plus évidente est le calcul des niveaux SL et TP. Il y a deux options fondamentalement différentes ici :

  • (Option 1) le sous-système de prévision produit la structure de vague déjà finalement calculée
  • (Variante 2) le sous-système de prévision ne donne que les points théoriques de réalisation des vagues. On suppose que les vrais points de terminaison se trouvent quelque part à proximité et n'ont pas encore été évalués.

Pour l'instant, je m'en tiens à l'option 2. Une telle évaluation peut être faite sur la base du calcul de la zone d'achèvement de la vague et de l'évaluation « ponctuelle » de l'achèvement de la vague à l'intérieur de cette zone. La zone elle-même peut être calculée de différentes manières, par exemple en utilisant des statistiques d'erreurs prévues et réelles. Comme gradation d'une telle zone, on peut prendre l'erreur quadratique moyenne. Il existe un autre moyen, du moins mon modèle vous permet de faire une estimation alternative.

Une estimation ponctuelle de la réalisation d'une vague à l'intérieur de la zone peut être obtenue à partir de la recherche et de l'analyse des points extrêmes, en utilisant les principes énoncés dans les articles suivants :

- "Une façon de construire des niveaux de support et de résistance"

- "Afficher les niveaux de support et de résistance"

L'image ci-dessous montre conditionnellement les zones de fonctions, désignées par X et Y, limitées par la taille de la zone. De telles fonctions peuvent être la "densité par niveaux" de l'instrument ou l'estimation fréquentielle des longueurs et des durées de vie des segments d'onde. Dans un cas, vous devez respecter les minimums, dans l'autre, respectivement, les maximums dans ces zones :

Ainsi, la structure de données décrivant le flux de houle prédit prend finalement la forme suivante : des estimations des zones de complétion du mouvement des vagues sont ajoutées, et une estimation ponctuelle du niveau de l'instrument à l'intérieur de chaque zone :

Calcul du plan de trading

Le sous-système "gestion d'actifs", conformément à certaines réglementations, recevra des données de prévision pour chaque instrument : après l'envoi d'un signal de demande de prévision, chaque instrument recevra des prévisions en zigzag avec des caractéristiques probabilistes (de fréquence) des segments constitutifs à l'entrée de la gestion d'actifs. En fait, il est nécessaire de trouver la "voie de conclusion des transactions" la plus optimale, en tenant compte du niveau du dépôt, des transactions en cours, de leur correction, des risques et des restrictions du DC. En d'autres termes, effectuez un "certain" calcul d'un "certain" plan d'opérations commerciales (jusqu'à présent si "brouillard"). Le critère d'optimalité est également une question sérieuse, où est le juste équilibre entre le profit et le risque. :à propos)

Il ressort également de ce qui précède que le plan des opérations de trading dans le cas général peut différer du processus de vague initial (zigzag). Une telle situation peut survenir non seulement en raison de la procédure d'affinement de la réalisation des vagues, mais aussi, par exemple, lors du franchissement des zones d'erreurs de terminaison efficaces, comme le montre la figure ci-dessous :

Dans le cas décrit, il peut être nécessaire de corriger des transactions (rejet d'une transaction intermédiaire) ou, en réponse, il peut y avoir une diminution du lot sur cette partie de l'itinéraire. C'est difficile à dire avec certitude, tout à coup des études montreront que ces petits zigzags sont les plus stables statistiquement et il est logique de leur attribuer un plus grand nombre de lots - jusqu'à présent, tout est très théorique.

Dans le cas général, sur la base d'un plan de trading, il devient possible de prévoir, en quelque sorte, des « cash flows ». Bien sûr, cela n'a de sens que pour les stratégies basées sur (ou proches de) une prévision sous une forme ou une autre.

Exécution des opérations de trading

Tout dépendra de la logique spécifique de traitement du plan de trading. Intuitivement, cela semble clair, mais plus de détails sont nécessaires.

Disponibilité des fonctions de service

C'est le nom général des caractéristiques spécifiques qui surviennent lors de la négociation en mode automatique dans l'environnement MT. La première chose dont je me suis souvenu :

  • vérification de l'intégrité des données historiques
  • gérer les erreurs qui se produisent lors des opérations de trading

Chers collègues, si vous avez quelque chose à ajouter (pour l'entreprise), écrivez, sinon je ne comprends pas vraiment en MT.

Qu'est-ce que je demande

J'ai essayé et j'espère que ce qui précède est moins clair. Ou peut-être pouvez-vous utiliser :

  • programmation mathématique (programmation linéaire et non linéaire) : en substance, ce qui précède ressemble à un problème d'optimisation classique, une théorie bien développée et de nombreux développements dans ce domaine
  • Chaînes de Markov
  • peut-être une combinaison de ces approches dans une logique plus complexe, il peut être possible d'évaluer les risques avec des chaînes de Markov, et d'effectuer l'optimisation par programmation mathématique (et pourquoi pas ?). J'espère que l'idée de croiser un hérisson avec un serpent mérite déjà un prix Dr. Schnobel distinct et honorifique.

Il me semble que, sur la base des théories et des approches sélectionnées parmi toute la variété, il sera possible de développer un module de gestion d'actifs universel très efficace qui peut vraiment maximiser les profits (ou minimiser les pertes, tout dépend de la définition de qui un optimiste est). Est-ce vrai ? Peut-être que quelqu'un a déjà emprunté cette voie et peut éclairer la situation.

Et l'éternelle question, si c'est possible, alors comment ?

Pas un spécialiste dans le domaine des mathématiques, mais quelques réflexions sur l'utilisation des chaînes de Markov sont apparues, et j'essaierai de les exprimer dans un proche avenir. En ce qui concerne la programmation mathématique, il y a un profane complet, et même si je n'ai rien lu, tout est encore devant. Mais à titre de référence pour ceux qui ne savent peut-être pas du tout ce qu'est la programmation mathématique, voici une citation générale :

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

Programmation non linéaire - la fonction objectif et les contraintes sont non linéaires. La programmation non linéaire est généralement subdivisée comme suit : Programmation convexe - la fonction objectif est convexe (si la tâche de sa minimisation est considérée) et l'ensemble sur lequel le problème extrémal est résolu est convexe. Programmation quadratique - la fonction objectif est quadratique et les contraintes sont des égalités et des inégalités linéaires.

Problèmes multiextrémaux . Ici, on distingue généralement des classes spécialisées de problèmes qui sont souvent rencontrés dans les applications, par exemple, les problèmes de minimisation sur un ensemble convexe de fonctions concaves.

Si l'exactitude de l'approche choisie est confirmée dans le processus de recherche en laboratoire, la prochaine étape logique sera l'élaboration de spécifications techniques pour le développement d'un "système de programmation linéaire" à mettre en œuvre. Je n'exclus pas, et j'espère que le sujet désigné ne m'intéressera pas seulement.

Bon courage à tous et zigzags au passage :o)))

 
Intéressant.
 

La structure des ondes, quelle méthode

utilisez-vous ou quelle théorie ?

Et si vous pouvez être plus précis.

 
A Sol

Интересно.

Brève mais succincte. :о)

J'ai relu mon message et je me suis rendu compte qu'il aurait dû être joliment réécrit ou supprimé. J'étais trop pressée et j'ai fini froissée et maladroite. Mais peu importe. Un tel sous-système universel est vraiment intéressant (au moins deux d'entre nous s'y intéressent :), mais seulement pour les Expert Advisors, qui ont une prévision claire, au moins d'une certaine manière, par exemple TP et SL.

Je n'ai peut-être pas tout regardé sur le forum, mais la plupart du temps, l'utilisation de chaînes de Markov (CM) est suggérée pour prédire le processus de citation. Je ne suis pas mathématicien, mais à mon humble avis, une telle application n'a aucun sens. Les CM en général sont loin des processus de cette nature. Et le plus souvent, les discussions tournent autour de la matrice de transition plutôt que du modèle du processus lui-même. Les états et les transitions entre eux sont un élément important, mais pas le plus important.

Apparemment, le CM aidera à résoudre les problèmes d'optimisation de l'itinéraire lui-même par des commandes (leur choix tenant compte de la nature probabiliste). Et il semble que les propriétés de ce "macro-processus" soient très proches de celles du CM. En outre, il y a toutes sortes de subtilités - par exemple, la prévision indiquait un fort mouvement dans le futur (et non maintenant). Et dans ce cas, il peut être judicieux de refuser un grand nombre d'opérations sur d'autres instruments maintenant et de concentrer la ressource (le dépôt) sur le mouvement attendu. Si le mouvement fort est confirmé - le programme sera complet. Si ce n'est pas le cas, le SL sera déclenché, ce qui, là encore, peut être plus acceptable que certains des ordres SL déclenchés dans l'alternative.

Mais nous pouvons difficilement étendre l'optimisation dans son intégralité et inclure (ou au moins juste considérer) l'environnement commercial du DC. Des éléments de programmation linéaire seront probablement nécessaires ici.

"Eh bien, c'est si kA-A-A-tsa..." (C)

à sator

Structure des ondes, par quelle méthode

utilisez-vous ou quelle théorie ?

Et si vous pouvez être plus précis.

J'ai discuté du concept du système et de certains de ses composants sur un forum fermé. Maintenant, je ne suis pas prêt à en parler ouvertement. La théorie est entièrement la mienne.

 

Intéressant. Je vais devoir le lire attentivement à la maison ce soir.

Et inviter ceux qui ont développé quelque chose de similaire à discuter...

 
nen >> :

Intéressant. Je vais devoir le lire attentivement à la maison ce soir.

Et inviter à la discussion ceux qui ont développé quelque chose de similaire...

Je n'ai pas réussi à résoudre mon problème, décrit dans le premier message, mais il s'est avéré ne pas être si trivial. En général, je pense.

Mais comme une étude optionnelle des chaînes de Markov et une meilleure compréhension de celles-ci, vous pouvez essayer de développer un sous-système pour la prédiction de la structure des vagues. Prédire le prix directement avec eux n'a aucun sens, mais nous pouvons l'aborder différemment - isoler des états, si je puis dire, d'un ordre supérieur.


Je ne pense pas que ce soit une idée entièrement nouvelle de prendre un zigzag comme alternative. Ensuite, collectez les statistiques des paramètres pour les segments en zigzag. La première chose qui vient à l'esprit est la longueur du segment, ses projections sur les axes X et Y (respectivement le temps et l'étendue), peut-être les zones formées par la chaîne de segments. Sur la base des statistiques, élaborer des règles de classification. Comme critère de classification, on peut prendre des fréquences statistiques et reprendre le zigzag, tout en faisant une classification de chaque segment.


En fait, chaque classe sélectionnée d'un segment de zigzag sera son état. Selon les premières approximations, il devrait y avoir de trois à neuf de ces États. En partant des fréquences statistiques, les intervalles pour chaque paramètre doivent être sélectionnés de telle sorte que les valeurs de fréquences résultantes soient significatives et diffèrent considérablement les unes des autres. Il sera alors facile de faire un graphique des états et de calculer la matrice de transition entre les états. Jusqu'ici intuitivement, mais il me semble que seul le segment actuel et celui qui le suit peuvent être prédits à l'aide du CM.


Après avoir obtenu tous ces éléments, nous pouvons déjà tirer quelques conclusions concernant une stratégie acceptable ou au moins obtenir une notion statistique des situations dans lesquelles il serait préférable de ne pas négocier. Si cela fonctionne, il sera possible d'obtenir un modèle de prévision plus avancé, par exemple une formule empirique d'espérance mathématique de la classe future ou quelque chose comme ça.


Chaque état du segment limitera son achèvement à une certaine zone. L'important est que la classification utilisée nous permette de procéder à l'estimation de la projection des segments prédits sur les axes X et Y. Il ne reste plus qu'à trouver le point estimé de retournement local dans la zone délimitée d'achèvement de la vague. Et il peut être calculé soit par la méthode décrite ci-dessus, soit en utilisant les niveaux de Murray.


Il se peut que cette méthode de prévision donne un bon résultat, qui sera prouvé statistiquement sans aucun artifice. C'est comme si vous ne pouviez pas savoir avant d'avoir essayé.

 
grasn писал(а) >>

...Il ne reste plus qu'à trouver le point de pivot local prévu dans la zone délimitée...

Si vous trouvez celui-ci, tout le reste de vos écrits est très facile à attacher.

 

était sur le net quelque part

 

à Prival

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

SalutPrival! Vous avez dû oublier votre ancien adversaire :o) Mais peu importe, je survivrai à la diplomatie :


Votre regard attentif n'a pas dû échapper au fait que j'essaie de maîtriser les chaînes de Markov et la programmation linéaire à des fins légèrement différentes, à savoir la gestion des actifs, c'est-à-dire la recherche et la sélection de la meilleure décision de trading, plutôt que la prévision proprement dite. Ce que j'ai proposé est une sorte d'étude de la théorie dans le cadre du développement optionnel. Et je détecte les points de pivot d'une manière complètement différente, comme je l'ai écrit et démontré ci-dessus.


Et pour ce qui est de "tout le reste s'adaptera", vous vous trompez lourdement. Il suffit de se référer à la sagesse des anciens Chinois et à mes observations :o) : Vous ne trouverez jamais un chat noir dans une pièce sombre, surtout dans les moments où il n'est pas là. Faites-moi entièrement confiance dans cette expertise - j'ai un chat noir et croyez-moi, je sais de quoi je parle. :о)))


à njel

Oui, je connais ce produit et j'ai une idée de la logique selon laquelle il fonctionne. Effacez-le de votre ordinateur et n'utilisez plus du tout les théories des ondes gauche et droite. N'utilisez que les vôtres.

Mais merci pour la photo, très jolie. J'aime beaucoup ça en tant qu'artiste. :о))

 
grasn

À mon avis, il n'est pas nécessaire de chercher des approches communes - théorie de l'optimisation, chaînes de Markov...

La principale raison en est que le choix de l'actif n'est pas un problème propre à l'entreprise.

Les chaînes de Markov sont la clé pour établir des priorités.

J'ai une tâche similaire, bien que je ne sois pas encore entré dans les détails, juste un peu.

J'ai réfléchi à la façon de décider.


Supposons que nous ayons un ensemble d'instruments financiers (actifs) et des signaux pour chaque outil. Les signaux sont valables pendant un certain temps, par exemple, ils sont générés à l'ouverture d'une barre quotidienne et restent valables jusqu'au début de la barre suivante. Un point d'entrée est recherché à l'intérieur de la barre pour chaque symbole en fonction du signal. S'il y a plusieurs signaux en même temps

pour différents symboles en même temps, lequel doit être prioritaire ? L'un

Le premier ? Ou d'attendre celui qui a la plus grande probabilité d'aboutir à un résultat favorable ?

Je pense qu'il est nécessaire de collecter des statistiques pour chaque instrument séparément, puis en fonction de

Je vais utiliser ces statistiques pour essayer de rechercher des optimums.



 
njel >> :

quelque part sur le net

Il s'agit d'une prédiction statistique des N barres qui précèdent le mouvement de la MA (lignes en pointillés lisses à droite de la dernière barre).

et une valeur statistique des frontières où le prix est le plus susceptible de bouger (lignes pointillées verticales

lignes à côté de chaque barre prédite pour la MA rapide)