Обсуждение статьи "Моделирование рынка: Position View (XIX)"

 

Опубликована статья Моделирование рынка: Position View (XIX):

Один из вопросов, который доставлял мне наибольший дискомфорт, заключается в том, что класс C_ElementsTrade содержит код для обращения к позициям. Не воспринимайте это как ошибку, потому что на самом деле это не так. Однако из-за этого некоторые задачи, которые нам предстоит выполнить позже, становятся более рискованными с точки зрения ошибок. Вся работа по реализации индикатора позиции велась с расчетом на его использование в сервисе репликации/моделирования. Однако при запуске в этой среде у нас не будет никакого доступа к реальной позиции. Следовательно, любой вызов библиотеки MQL5, предназначенный для получения данных о позиции, не окажет никакого влияния на код.

В предыдущей статье «Моделирование рынка: Position View (XVIII)» я показал, как решить некоторые проблемы. Например, я объяснил, как предотвратить удаление пользователем графических объектов, созданных индикатором позиции. Мы сделали это очень просто, без особых сложностей, поскольку восстановление объектов в правильном порядке может оказаться довольно трудоемким и потребовать от нас настоящих программистских акробатических трюков. Кроме того, мы добавили отображение объема — данные, которые некоторые трейдеры используют, чтобы определить, можно ли применить ту или иную стратегию к позиции.

Эта информация позволяет осознанно увеличить позицию, которая уже приносит прибыль, или снизить риск. Если вы удерживаете значительно большой объем, движение рынка в направлении, противоположном вашей позиции, может привести к очень большому убытку. Зачастую это приводит к тому, что риск в итоге закрывает сделку, а вскоре после этого вы видите, как рынок движется в том направлении, которое вы и предполагали. Помимо того, что это очень неприятная ситуация, она серьезно сказывается на психологическом состоянии трейдера и заставляет его полностью потерять уверенность в себе.

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

Теперь, однако, нам предстоит заняться несколько более сложным вопросом, решение которого я довольно долго откладывал. Не думайте, что работа будет чрезвычайно сложной. Вы заметите, что, хотя проблема и представляет определенную сложность, я объясню её просто и понятно. Итак, приступим к делу.


Автор: Daniel Jose