Суть советника - это задание определённых комбинаций свечей. Правила такие: свеча бычья - значит "1", свеча медвежья - значит "0". То есть можно простым указанием "101" задать поиск таких комбинаций свечей:
Пока проблема в кодировании представления комбинаций - во входных параметрах нельзя задать число в бинарном виде.
можно текстом а потом распарсить строку....
Прикольно).
Во входных параметрах можно задавать числа в десятичном виде. А его можно и переводить в двоичный вид или уже использовать как последовательность двоичных знаком вытягивая каждый бит по отдельности. Всё просто)).
можно текстом а потом распарсить строку....
Как черновой вариант я так и сделал, плюс проверки всякие - на длину строки и чтобы только символы '0' и '1' были в строке. Но тут новая беда: такую строку нельзя прогнать в тестере в режиме оптимизации :).
Прикольно).
Во входных параметрах можно задавать числа в десятичном виде. А его можно и переводить в двоичный вид или уже использовать как последовательность двоичных знаком вытягивая каждый бит по отдельности. Всё просто)).
Задать как параметр в бинарном виде можно, а вот представить во входных параметрах в бинарном виде не выйдет:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Входной параметр в бинарном виде
Vladimir Karputov, 2017.04.05 09:24
Пример из справки Типы char, short, int и long:
... Для целочисленных переменных значения можно задавать в бинарном виде с помощью префикса B. Например, можно закодировать рабочие часы торговой сессии в переменную типа int и использовать информацию о них согласно требуемому алгоритму:
//--- для рабочих часов ставим 1, для нерабочих указываем 0 int AsianSession =B'111111111'; // азиатская сессия с 0:00 часов до 9:00 int EuropeanSession=B'111111111000000000'; // европейская сессия 9:00 - 18:00 int AmericanSession =B'111111110000000000000011'; // американская 16:00 - 02:00
Но задать в бинарном виде входной параметр (именно в виде 111111111000000000) -
//+------------------------------------------------------------------+ //| Test.mq5 | //| Copyright 2017, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property script_show_inputs //--- для рабочих часов ставим 1, для нерабочих указываем 0 input int AsianSession=B'111111111'; // азиатская сессия с 0:00 часов до 9:00 input int EuropeanSession=B'111111111000000000'; // европейская сессия 9:00 - 18:00 input int AmericanSession=B'111111110000000000000011'; // американская 16:00 - 02:00 //--- string text="10"; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void OnStart() { //--- } //+------------------------------------------------------------------+
не выйдет - во входных параметрах бинарное представление числа преобразовывается в обычное число:
Вопрос: есть ли способ задавать во входных параметрах значения именно в бинарном виде (чтобы пользователь видел не число, а именно бинарное представление, вроде 111111111000000000)?
И напрашивается на вариант -1 0 1
Где 0 - подходит для любого направления
Как черновой вариант я так и сделал, плюс проверки всякие - на длину строки и чтобы только символы '0' и '1' были в строке. Но тут новая беда: такую строку нельзя прогнать в тестере в режиме оптимизации :).
сделайте входной параметр типом int далее перевидите тип инт в стринг и распарсите ....
Ситуация кажется не очень надежной для свечей с Close == Open
И напрашивается на вариант -1 0 1
Где 0 - подходит для любого направления
Я вариант "Close == Open" выкинул как неблагонадёжный -> у такой свечи нет направления.
Тут только через стринг или масивы.
Задать как параметр в бинарном виде можно, а вот представить во входных параметрах в бинарном виде не выйдет:
Писал, что можно задавать в десятичном виде, как обычное целое число,а дальше вытягивать с него отдельные биты.
Я вариант "Close == Open" выкинул как неблагонадёжный -> у такой свечи нет направления.
Ну тогда нужно рассматривать все варианты через жидкий график.
Так как то что выкинуто, могло на -30 сек таймфрейме дать полноценное направление
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Суть советника - это задание определённых комбинаций свечей. Правила такие: свеча бычья - значит "1", свеча медвежья - значит "0". То есть можно простым указанием "101" задать поиск таких комбинаций свечей:
Пока проблема в кодировании представления комбинаций - во входных параметрах нельзя задать число в бинарном виде.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Morse code
Vladimir Karputov, 2017.04.06 10:25
Пока Morse code version "1.003": можно вручную задавать строковое описание паттерна и даже прогонять в тестере одиночные проходы.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Morse code
Vladimir Karputov, 2017.04.07 08:42
Morse code version "1.005"
...
Решилось две проблемы:
1). пользователь видит во входных параметрах паттерн в виде "0101":
2). Входной параметр отлично поддаётся оптимизации в тестере.