Trabajo finalizado
Tarea técnica
Вітаю! Шукаю програміста з України.
Потрібно зробити наступні функції в роботі з відкритим кодом
+ Добавити в блок докупок функцію, в якій можна вибрати по якій моделі мають відбуватися докупки: 1) В ту сторону, що закрився попередній бар (Prev Bar Direction). 2) В зворотню сторону (Prev Bar Reverse). 3) По цих двох моделях (Any Direction). Це можна взяти з основного блоку для входу. Також цю модель 3 (Any Direction) додати в основний блок для відкриття угод.
2. + Вихід після великого бару. On/Off. Закрити всі угоди, якщо закрився великий бар. Можливість задати в настройці, якого мінімального розміру в пунктах має бути цей бар. А також на скільки пунктів мінімум має бути в плюсі угода. Якщо угод декілька (то в розрахунок береться найстарша угода або та, яка зараз знаходиться найдальше).
3. + Зробити трейлінг (SmartPercent) і додати його в випадаючі списки в основному блоці і блоці докупок. Дві настройки: 1) На скільки мінімум має пройти угода пунктів в плюс. 2) Скільки відсотків з цього плюса зарезервувати (зберегти). Наприклад задали значення 100 і 30 відповідно. Як тільки угода буде в плюсі на 100 пунктів, активовується трейлінг і стоплос переводиться на рівень +30 (%) пунктів від ціни входу. Після активації, трейлінг має підсуватися в більший плюс. Наприклад угода буде +103 пункти, трейлінг має бути на +30,9 пункта і т.д.. Тобто з кожним відсотком (від значення в настройці 1) руху угоди в плюс, трейлінг також має йти в плюс.
4. + Мінімальний ATR для торгівлі. Якщо поточний ATR в пунктах менший, ніж задано в цьому фільтрі, значить торгівля заборонена. MinValueATR (або MinATR_Trade). Можливість вибрати з випадаючиого списку таймфрейм, по якому брати ATR. А також настройка за скільки свічок починаючи з попередньої рахувати значення ATR.
5. + Переробити блок сесій торгівлі. Зробити, щоб години і хвилини можна було прописувати в одній стрічці через двокрапку. Наприклад 9:30. І в назві функцій видалити слова «Hour» i «Minutes». Те ж саме зробити з функцією InstrumentCloseTime.
6. + Зробити блок сесій окремо для докупок - в блоці Rebuy.
7. + Фільтр по максимальній довжині тіні в кінці попередньої свічки для відкриття угоди (MaxCandleShadow). On/Off. Якщо тінь в кінці свічки більша, ніж задана в настройці в пунктах по 4-х знаку в форматі «0.0» (тобто з точністю до 5-ти знаку), значить угода не відкривається. 0.0 – означає, що тінь має бути 0, тобто свічка на закритті має бути без тіні. Плюс додати переключателі для уточнення: 1) Не відкривається угода в сторону закриття попередньої свічки 2) Не відкривається угода в зворотню сторону від закриття попередньої свічки 3) Не відкривається угода взагалі
8. + ТР по ATR. Щоб робот сам визначав постійно ТР у відсотках від поточної волатильності. Коли робот поставить ТР в угоді, при зміні волатильності його вже змінювати не потрібно. Поточний ATR в пунктах по 4-х знаку має помножитися на задане значення в настройці TakeProfitValue – це і буде значення ТР в пунктах. Для ТР і SL зробити окрему настройку, звідки ці функції будуть брати значення волатильності, таку як в пункті 4.
9. + SL по ATR. Та ж сама логіка, що в попередньому пункті
10. + Виправити логіку TargetManagementMode для «Only Closed» i «All trades».
«Only Closed» - як тільки по закритих угодах за поточний день буде плюс такий або більший, як задано в одній із настройок по цілях, значить торгівля на сьогодні закрита. Торгівля починається з наступного дня.
«All trades» - як тільки по закритих і відкритих угодах за поточний день буде плюс такий, як задано в одній із настройок по цілях, значить торгівля на сьогодні закрита. Торгівля починається з наступного дня.
+ Фільтр торгівлі по запасу ходу по ATR. Якщо запас ходу менший, ніж задано в настройці, значить угоди в цю сторону не відкриваються. Пройдений ATR рахується для buy/sell від мінімуму/максимуму, де була ціна в поточний день до ціни відкриття угоди.
12. + Фільтр по мінімальному розміру тіла свічки для входу. On/Off. MinCandleBodySize. Логіку можна взяти з функції MinCandleSize.
13. + Виправити логіку SL. Щоб вони не збільшувалися дивним чином. Тільки зменшувалися до заданого значення, якщо брокер не дозволяє поставити таке значення, як потрібно. Якщо задати значення ніж дозволено в брокера, то робот чомусь то збільшує то зменшує це значення постійно. Якщо задати значення SL менше, ніж дозволяє брокер, наприклад 8 пунктів, то робот має поставити SL такий, який дозволяє брокер і як тільки угода буде йти в плюс, робот має це значення зменшувати, доки не поставить його таким, як задано в настройці.
14. + Змінити у вкладці About емейл на наступне: Copyright 2019, ************@gmail.com і версію на 2.00. Також змінити версію у візуалізації.