Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 373

 
vadynik:
Pouvez-vous me dire comment faire un trailing virtuel, comment remplacer OrderModify() ?
Solution prête (pour les STOPs virtuels). Traînage virtuel dans la bibliothèque b-PSI@Trail_Stairs dans cet EA.
 
PaMyC:


Merci beaucoup, ça m'a aidé), j'ai juste enlevé le point et le miracle s'est produit. ))))

Juste au moment où je pensais que l'erreur était minime mais si méchante...


De rien)
 
vadynik:


Je veux juste comprendre, ici je fais une fonction

Mais sl monte et descend derrière l'enchère, ce qui est naturel) donc la condition de fermeture ne fonctionnera pas).

alors comment faire en sorte que le sl n'aille que dans une seule direction ?


Il vous manque une condition : si la distance calculée entre l'emplacement et le nouveau stop calculé est inférieure à la distance entre l'emplacement et le stop actuel, alors modifiez le stop (déplacez-le vers le prix), sinon, laissez-le tel quel, jusqu'à ce que la condition nécessaire soit remplie.
 
Ekburg:

Il vous manque une condition : si la distance calculée entre l'emplacement et le nouveau stop calculé est inférieure à la distance entre l'emplacement et le stop actuel, alors modifiez le stop (déplacez-le vers le prix), sinon, n'y touchez pas, jusqu'à ce que la condition nécessaire soit remplie.
Je ne veux pas le modifier - nous avons besoin d'un chalutage virtuel.
 
vadynik:
Je ne veux pas le modifier, j'ai besoin d'un chalutage virtuel.

J'ai écrit par habitude)) Essayez simplement ce que je vous ai conseillé, de la même manière dans votre recherche virtuelle.
 

Messieurs, ma demande est toujours valable (voir page 369). Je vais le répéter ici :


Дорогие товарищи, друзья! Трудно выразить, как я благодарен вам за предыдущую помощь мне в написании советника (в конце 350-х стр. этой темы). Теперь мне снова нужна ваша помощь, надеюсь, вы вновь её окажете.

Итак, мне нужно прописать в советнике следующее:

Советник должен работать на экстремумах EMA. На максимумах ЕМA он должен выставлять отложенный ордер на открытие шорта по цене, равной цене лоя свечи разворота мувинга минус определённый процент от этой цены (например, лой свечи разворота * 0,99) В отложенном ордере также должны быть прописаны стоп-лосс и тейк-профит в процентах от этого самого лоя свечи разворота мувинга. Но это не всё. Также при наличии максимума EMA советник должен выставить стоп-лоссы во всех открытых лонгах по данному активу на той же отметке, на которой должен открыться шорт. Таким образом, при достижении расчётной цены (см. выше) должны быть закрыты имеющиеся лонги (по выставленным ранее советником стоп-лоссам) и открыт шорт.

При минимуме EMA всё наоборот: Имеется свеча, где мувинг развернулся вверх. На следующей свече советник должен начать следить за ценой и когда она превысит отметку: хай свечи разворота + определённый процент (например, хай свечи разворота * 1,01 ), то в существующих открытых шортах должны быть выставлены стоп лоссы по этой цене (хай свечи разворота + определённый %) и должен быть выставлен отложенный ордер на открытие лонга по этой же цене (со стоп-лоссом и тейк-профитом в %-х от хая свечи разворота).


Таким образом, советник при развороте мувинга (имеется ввиду завершённый разворот, то есть разворот на предыдущих двух свечах, текущая свеча в расчёт не идёт, мувинг может разворачиваться на текущем баре, но в итоге не развернуться на нём, эти развороты в течение текущего мувинга, если в итоге закрытия бара разворота нет - в расчёт не идут).

Так вот, при максимуме мувинга советник должен выставлять на определённой (см. выше) отметке стоп-лосс на имеющихся лонгах и выставлять отложенный ордер на открытие шорта по этой же отметке (со стоп-лоссом и тейк-профитом).

При минимуме мувинга всё наоборот - советник выставляет стоп-лосс в открытых шортах на определённой отметке (см. выше) и выставляет отложенный ордер на открытие лонга по этой же отметке (со стоп-лоссом и тейк-профитом).

Таким образом, по советнику не возможно будет выйти в кэш, всегда будем либо в лонге, либо в шорте. При закрытии лонга одновременно открывается шорт и наоборот.


Я пробовал поколдовать над имеющимся у меня рабочим советником (он работает на пересечении двух EMA), модифицировать его нужным образом. Но, ввиду слабых знаний в Cи++ и свойственного мне отвращения к программированию, это не получилось. Вот ссылка на советник, который я пытался модифицировать в нужный мне: https://www.mql5.com/ru/code/8463?source=terminal4_codebase

Я понимаю, что помощь мне требуется большая, задача не из лёгких, поэтому в виде бонуса подарю помогшим мне мои результаты исследований пары BTC/USD (биткойны/доллары) биржи btc-e. Я определил наиболее подходящий мувинг (чтоб поменьше ложных сигналов и вовремя срабатывал на хороших движениях), наилучшие параметры по нему (те самые проценты от хая/лоя свечи разворота), наиболее подходящие тейк-профиты. В эксельке считал сие. Экселька эта - с меня, в виде знака признательности. Может и вам пригодится.

Я не хочу тупо торговать по этому советнику. Он мне нужен, чтобы следил за рынком, когда я за ним не слежу (ибо круглосуточно следить не получается). А когда я у монитора, то торгую по линиям поддержки/сопротивления по определённой методике, но и при этом мне помогает система EMA - для определения точек пробоя уровней, выставления стопов.

Жду помощи в написании советника и на неё уповаю.

J'ajouterai une nuance : s'il y a un renversement de la muvinj (par exemple, son renversement à la hausse), la position sur le renversement n'est pas ouverte (le prix n'atteint pas le haut de la bougie de renversement + un certain %), alors il y a un renversement de la muvinj, l'ordre d'ouvrir un long reste en vigueur. Il reste au même niveau jusqu'à ce qu'un nouveau renversement se produise, le sommet du renversement étant inférieur au sommet du premier renversement. Si le deuxième renversement est plus élevé que le haut du premier renversement, l'ordre d'ouvrir une position sur le bas de la première bougie de renversement reste en place.

 
okidoki543:

Messieurs, ma demande est toujours valable (voir page 369). Je vais le répéter ici :

J'ajouterai une nuance : s'il y a un renversement de la muvinj (par exemple, son renversement à la hausse), une position sur le renversement n'est pas ouverte (le prix n'atteint pas le haut de la bougie de renversement + un certain %), alors il y a un renversement de la muvinj, l'ordre d'ouvrir un long reste en vigueur. Il reste au même niveau jusqu'à ce qu'il y ait un nouveau renversement à la hausse, le sommet de la bougie de renversement étant inférieur au sommet du premier renversement. Si le deuxième renversement est plus élevé que le haut du premier renversement, l'ordre d'ouvrir une position sur le bas de la première bougie de renversement est maintenu.


Vous avez une bonne chance de gagner de l'argent réel lorsque vous avez un bon échange (qui a été prouvé par l'expérience et votre portefeuille).

La commande n'est pas bonne. Les gens écrivent ici et essaient de faire quelque chose, ils ne cherchent pas à obtenir un cadeau.

Si vous avez pitié de l'argent, gagnez sur votre idée :

- Il existe de nombreux concours et promotions spéciales de différents dts, si vous tradez bien, vous pouvez gagner de l'argent réel avec rien (testé par l'expérience et mon portefeuille).

 
vadynik:


J'ai ajouté la condition, mais ça revient toujours en arrière).


pas la bonne condition, vous calculez la distance entre le prix et le prix de l'ordre, et vous avez besoin du prix au stop actuel).

Si un short est en attente, il est dirigé vers le premier bloc, si un long est en attente, il est dirigé vers le second bloc, puis les trailing stops.

Si la position est courte, elle passe au premier bloc, si elle est longue, elle passe au deuxième, puis aux calculs, aux vérifications et au suivi.

 
ALXIMIKS:


Cher Monsieur, envoyez votre cahier des charges à une section spéciale du forum, ils vous aideront et vous conseilleront.

Merci de m'avoir incité à le faire.
 
Si quelqu'un veut m'aider (voir ci-dessus), je suis ouvert à la collaboration.