Cucumber_Violet_1.53 by AriusKis AriusKis@gmail.com Входные данные: Общие(1): 1.1) UseGraphs/ Учет дополнительных таймфреймов Запрещает или разрешаетиспользование дополнительных таймфреймов 1.1) Per_2/ Период второго графика Выбирается период для второго графика, на котором будут находиться уровни прайс экшн. Должен быть выше, чем у основного графика. 1.2) Per_3/ Период третьего графика Выбирается период для третьего графика, на котором будут находиться уровни прайс экшн. Должен быть выше, чем у второго и основного графиков. Настройки индикатора свингов(2). Пояснение по работе индикатора свингов. Более удобный, чем Zig-Zag. Не учитывает временную составляющую на графике. Для прорисовки свинга достаточно одного условия - размер свинга больше минимального заданного. Структура изображается на основе свингов. Советник находит основные свинги и откаты по заданным параметрам. 2.1) UseSwings/ Использовать индикатор свингов? При выборе false свинги не будут рассчитываться советником. 2.2) SwingPer/ Кол-во используемых таймфреймов Выбор от одного ТФ до трех. При выборе более одного ТФ, таймфреймы берутся с первых двух входных данных Per_2 и Per_3. 2.3) VolBarsSw/ Кол-во баров для расчета волатильности Нужно для нахождения средней волатильности одного бара за определенный период. Рекомендую выставлять значение от 200 до 500. 2.4) K_volSwing/ Коэф. от вол-ти для минимального свинга Основной параметр для рассчета базовых свингов. Коэффициент умножается на среднюю волатильность, получая тем самым минимально возможный базовый свинг в пунктах. Если свинг будет меньше данной величины, то он учитываться не будет советником. Рекомендую выставлять значение от 1,5 до 30 в зависимости от желаемого размера свинга. 2.5) Minswing/ Миним. возможный свинг в пунктах В случае низкой волатильности размер свинга может быть слишком маленьким, для этого минимальный свинг ограничиваем также фиксированной величиной в пунктах. Является также основным параметром для свингов. Рекомендую выставлять в зависимости от валютной пары и спреда. 2.6) SwingMemory/ Кол-во свингов для удержания в памяти Именно такое количество свингов будет удерживаться в памяти и при необходимости отрисовываться на графике. Сделано для экономии памяти, плюс, старые свинги нас не интересуют. Рекомендую значение от 5 до 60 в зависимости от желаемой частоты торговли. 2.7) SwingDraw/ Изобразить базовые свинги? Выбирается, на скольких графиках будут изображены свинги. Основной, второй (Per_2) и третий (Per_3). На втором и третьем графике изображается только при условии, что SwingPer указывает на аналогичное количество графиков, либо больше. 2.8) SwingColor/ Цвет линий базовых свингов 2.9) MinRollBack/ Минимальный учитываемый откат в % Указываем, какой свинг уже можно считать откатом. Советник будет высчитывать % от основного свинга. Указываются значения от 5% до 80%. 2.10) KMainMin/ Коэф. миним. основного свинга от миним. базового Минимально возможный основной свинг рассчитывается путем умножения данного коэффициента на размер минимального базового свинга 2.11) KMainSWMax/ Коэф. макс. основного свинга для сброса ценовой структуры Иногда при больших длинных движениях цены, структура также может вытянуться. Чтобы советник уже не считал этот основной свинг в дальнейшем частью структуры, нужно ее сбросить. Поэтому при образовании любого ценового движения, равного величине минимального основного свинга, структура будет сброшена. Этот параметр побдирается в ручную, обычно величина от 3 до 10. 2.12) DrawPStruct/ Изобразить ценовую структуру? Указываем на скольких графиках советник будет изображать ценовую структуру. 2.13) PrimSwColor/ Цвет основных свингов 2.14) PrimSwWidth/ Толщина линии основных свингов 2.15) PrimSwStyle/ Тип линии основных свингов Если толщина линии основных свингов будет больше, чем 1, то тип будет принудительно - сплошная линия. 2.16) BackSwColor/ Цвет линий ценовых откатов 2.17) BackSwWidth/ Толщина линии откатов 2.18) BackSwStyle/ Тип линии откатов Настройки индикатора уровней Sandwich(3). Пояснение по работе индикатора уровней Sandwich. Может изображать уровни прайс экшн, в зависимости от настроек пользователя, на от одного до трех выбранных графиках одного инструмента. Первый график тот, на который установлен советник (основной график), остальные графики откроются советником автоматически, либо, если график уже открыт, уровни отобразятся на нем. Градация силы уровней идет от 1 до 10, где 1 - самый слабый по силе уровень, 10 - самый сильный. Самые основные настройки, влияющие на внешний вид уровней и их силу: - (6) Bar4Fract/ Мин. кол-во баров для стороны фрактала, - (7) K_fading/ Нижняя граница коэф. затухания, - (11) K_FRmax/ Коэф. максимальной силы фрактала, - (14) K_volFloor/ Нижняя граница коэффициента волатильности, - (15) K_volRoof/ Верхняя граница коэффициента волатильности. Настраивая эти пять параметров в разных комбинациях можно получать абсолютно разную отрисовку уровней. После того как внешний вид уровней будет удовлетворительным, можно под конец настроить их окончательную силу парметром (12) K_power/ Коэф. максимальной силы уровня. 3.1) UseSandwich/ Исользовать ли индикатор уровней Sandwich? При выборе false, уровни не будут рассчитываться. 3.2) SandwichPer/ Сколько таймфреймов использовать? Выбор от одного, до трех. Один таймфрейм - только с основного графика. Два таймфрейма - основной график и указанный в Per_1. Три таймфрейма - основной график, Per_1 и Per_2. Если будет выбран только один график, значит для графиков с таймфреймами Per_2 и Per_3 не будут рассчитываться уровни. 3.3) Segment/ Количество рассматриваемых баров Количество баров, начиная с последнего на графике, которые будут браться для расчета уровней. Рекомендую использовать от 100 до 500. 3.4) Bar4Fract/ Мин. кол-во баров для стороны фрактала Это то минимальное количество баров от центрального бара фрактала, выше которых его хай, либо ниже которых его лоу. При выборе Bar4Fract = 2, советник будет находить все стандартные фракталы, то один бар, хай (лоу) которого выше (ниже), чем как минимум у двух соседних с каждой стороны. Рекомендую использовать значение от 3 до 10. 3.5) K_fading/ Нижняя граница коэф. затухания Должен быть выше 0 и не более единицы. Допустим, указываем значение 0,1. Это значит, что сила фрактала, расположенного в самом начале рассматриваемого периода баров, будет умножена на данный коэффициент. Чем моложе фрактал, тем коэффициент будет ближе к единице. Таким образом, более молодые фракталы будут обладать большей силой, чем более старые в истории. Чем меньше значение K_fading - тем больший разброс силы будет между старыми и молодыми фракталами. 3.6) K_round5/ Коэффициент круглого уровня 5 Если в уровень попадает круглое значение цены, то сила уровня увеличивается на K_round5. Проверяется в первую очередь среди круглых уровней. Круглый уровень должен иметь пять нулей в значении, например, 1,00000 или 100,000. Рекомендую значение от 1,1 до 1,5. 3.7) K_round4/ Коэффициент круглого уровня 4 Если в уровень попадает круглое значение цены, то сила уровня увеличивается на K_round4. Проверяется во вторую очередь, если не найден круглый уровень 5. Круглый уровень должен иметь четыре нуля в значении, например, 1,20000 или 150,000. Значение коэффициента K_round4 должно быть ниже значения K_round5 и выше единицы. 3.8) K_round3/ Коэффициент круглого уровня 3 Если в уровень попадает круглое значение цены, то сила уровня увеличивается на K_round3. Проверяется в последнюю очередь среди круглых уровней, если ни один из них не был найден. Круглый уровень должен иметь три нуля в значении, например, 1,36000 или 118,000. Значение коэффициента K_round3 должно быть ниже значений коффициентов K_round4 и K_round5 и выше единицы. 3.9) K_FRmax/ Коэф. максимальной силы фрактала Сделан для того, чтобы более сильные (значимые) фракталы были более сильными. То есть при значении коэффициента = 4, сила самого большого фрактала будет увеличена в 4 раза, а самого слабого - умножится на единицу. Остальные фракталы - пропорционально их величине. Не может быть меньше единицы. Рекомендую выставлять от 1,5 до 4. 3.10) K_power/ Коэф. максимальной силы уровня По умолчанию должен быть равен единице. Применяется для настройки силы уровней. Если хотим, чтобы все уровни уменьшились по своей силе, выставляем K_power больше единицы. Если хотим, чтобы все уровни стали более сильными - K_power выставляем меньше единицы. Должен быть выше нуля. Рекомендую значения между 0,5 и 1,5. 3.11) VolatBars/ Кол-во баров для расчета волатильности. Этот параметр нужен для того, чтобы уровни подстраивались под текущую волатильность на графике. Рекомендую ставить 50-100. 3.12) K_volFloor/ Нижняя граница коэффициента волатильности Используется в расчетах ширины уровней. Зона влияния самого слабого фрактала будет равна волатильности, умноженной на этот коэффициент. Не может быть меньше нуля. Рекомендую выставлять от 0,1 до 0,5. 3.13) K_volRoof/ Верхняя граница коэффициента волатильности Используется в расчетах ширины уровней. Зона влияния самого сильного фрактала будет равна волатильности, умноженной на этот коэффициент. Коэффициенты для промежуточных фракталов будут рассчитаны в соответствии с силой фракталов. Не может быть меньше, чем K_volFloor. Рекомендую выставлять значение от 1 до 5. 3.14) LevsDraw/ Изобразить уровни? Выбираем, на каких графиках хотим видеть отрисовку уровней. Уровни отрисовываются, при условии, что нужные графики выбраны в SandwichPer. 3.15) Stylecolor/ Цвет отрисовки уровней Три стиля - серый, красный, зеленый либо синий. Чем сильнее уровнее, тем насыщеннее оттенок уровня. 3.16) Drawforward/ Рисовать уровни вперед по времени? Если выбрано true, то уровни будут изображаться немного вперед по времени от цены. Сделано просто для удобства. 3.17) Textlabel/ Добавить надпись с силой уровня? Если true, то с справой стороны от каждого уровня будет отображаться его сила. Сила уровней колеблется от 1 до 10. 3.18) Textcolor/ Цвет текстовой метки Цвет надписи с силой уровня на графике. Настройки индикатора плотности тиков(4). Пояснение работы индикатора тиковой плотности: Показывает распределение в % всех тиков за указанный промежуток времени (выбирается в барах) на промежутке от минимальной до максимальной цены за выбранный промежуток времени. Общее количество полученных уровней будет зависеть от волатильности инструмента и коэффициента дискреции 4.1) UseTD/ Использовать индикатор тиковой плотности? При выборе true будет рассчитываться индикатор тиковой плотности. 4.2) Tickprecis/ Откуда брать тики Здесь может быть три варианта - а) тики берутся с текущего графика, б) с х2 меньше графика. Например если текущий таймфрейм - H2, то тики будут браться с Н1. Если М15, то тики берутся с М6. Таймфрейм источник тиков должен быть как минимум в два раза меньше текущего. в) с 3х графика - таймфрейм источник тиков будет как минимум в 3 раза меньше текущего таймфрейма. 4.3) TDperiod/ Кол-во баров для рассмотрения Количество баров, начиная с последнего на графике, учитываемые в расчете тиковой плотности. Рекомендую значение от 100 до 500. 4.4) TDcharts/ Сколько таймфреймов учитывать? Для скольких таймфреймов считать тиковую плотность. При выборе двух или трех таймфреймов, будут браться таймфреймы, указанные в 1)Per_2 и 2)Per_3 4.5) K_discret/ Коэф. дискреции уровней от величины волатильности Определяет толщину каждого уровня в пунктах. Советник вычисляет среднюю волатильность одного бара и умножает на данный коэффициент. В итоге получаем определенное количество пунктов, что и будет являться толщиной каждого уровня тиковой плотности. Рекомендую выставлять от 0,2 до 2,5 в зависимости от инструмента. 4.6) TDVolPer/ Кол-во баров для расчета волатильности По данному количеству баров будет вычисляться средняя волатильность в пунктах для одного бара, для дальнейшего вычисления дискреции уровней тиковой плотности. Рекомендую выставлять значение 50-100. 4.7) TDdraw/ Изобразить уровня плотности тиков? Выбор, на каких графиках (таймфреймах) изобразить уровни. 4.8) TDcolor/ Цвет уровней. Цвет уровней тиковой плотности. 4.9) MaxLengthTD/ Максим. длина уровня в барах Для удобства восприятия можно регулировать максимальную длину уровней на графике Рекомендую использовать как минимум 10 баров. 4.10) HelpLines/ Вспомогательные линии каждые ХХ баров Через указанное количество баров будет изображаться разграничительная линия с указанием ее значения. Сделано для более удобного восприятия силы уровней. Выставлять значение в 2-5 раз меньше, чем MaxLengthTD. 4.11) LinesCol/ Цвет вспомогательных линий 4.12) LinesTDtype/ Тип вспомогательных линий Параметр для удобства восприятия индикатора тиковой плотности. 4.13) TDTextcolor/ Цвет текстовой метки Над каждой вспомогательно линией размещается текстовая метка для понимания величины, на которую данная линия указывает. Настройки определения свечных паттернов(5). Пояснение - можно настроить автоматическое нахождение по заданным параметрам четыре типа свечных паттернов - пин-бар, рельсы, поглощение и внутренний бар (харами). Найденные свечные паттерны будут выделяться прямоугольной меткой и удаляться после трех появившихся баров в дальнейшем. 5.1) UsePattern/ Использовать свечные паттерны? При выборе true свечные паттерны будут определяться на выбранных графиках. 5.2) PattCharts/ На скольких таймфреймах искать? Можно выбрать только текущий график, либо совместно с графиками, таймфреймы которых указаны в 1)Per_1 и 2)Per_2. 5.3) Pinbar/ Учитывать пин-бар? Искать либо не искать пин-бар на графике. 5.4) PinBoundary/ Часть свечи для тела пин-бара. Указываем долю от размера всей свечи, больше которой тело пин-бара не может быть. Например, при указании значения 0,2 - таким образом, тело пинбара не должно превышать 1/5 от всей свечи. Размер всей свечи - от High до Low приравнивается к единице. Рекомендую устанавливать не более 0,5. 5.5) Rails/ Учитывать рельсы? Искать либо не искать рельсы на графике. 5.6) RelevSize/ Относительная разница тел свечей рельс в % Указывается максимальная девиация тел соседних свечей в % для определения принадлежности их к паттерну рельсы. Рекомендую выставлять не более 30%. 5.7) TailRails/ Макс-й разм. хвоста свечи в % от размера бара Хвосты свечей не должны быть сильно длинными по отношению к телу, здесь указываем их максимальный размер. Рекомендую выставлять не более 30%. 5.8) Harami/ Учитывать внутренний бар? Искать либо не искать внутренний бар на графике. 5.9) BodyHarami/ Миним. размер тела большой свечи от размера паттерна харами. Размер паттерна - от минимального между двумя свечами Low, до максимального High. Тело большой свечи не должно быть слишком маленьким. Рекомендую выставлять не менее 50%. 5.10) InsideProc/ Минимальный размер тела малого бара в % от внешнего для харами Тело внешнего бара берется за 100%. Чтобы исключить доджи, введено ограничение на размер тела малого бара. Рекомендую устанавливать не менее 10%. 5.11) Engulfing/ Учитывать поглощение? Искать либо не искать паттерн поглощение на графике. 5.12) BodyEngulf/ Миним. размер тела большой свечи от паттерна для поглощения Размер паттерна - от минимального между двумя свечами Low, до максимального High. Размер паттерна принимается за 100%. Рекомендую выставлять не менее 50%. 5.13) SmallProc/ Миним. размер тела малого бара в % от внешнего для поглощения. Тело внешнего большого бара берется за 100%. Чтобы исключить доджи, введено ограничение на размер тела малого бара. Рекомендую устанавливать не менее 10%. 5.14) K_pattern/ Коэфф. волат-ти для миним-го размера паттерна. Вычисляется средняя волатильность свечи за определенный промежуток времени. Дабы исключить слишком маленькие паттерны, не имеющие смысла в контексте графика, нужно указать советнику минимальный размер возможного паттерна, в зависимости от текущей волатильности. Рекомендую выставлять от 0,8 до 2. 5.15) Kmax_patt/ Коэфф. волат-ти для максим. размера паттерна. Позволяет определить максимальный размер паттерна, дабы исключить те, что вызваны всплеском волатильности. Рекомендую выставлять от 3 до 8. 5.16) Vol_barspat/ Колич. свеч для расчета вол-ти для паттернов. Указываем количество последних свеч, по которым будет высчитываться средняя волатильность. Рекомендую выставлять от 5 до 30. 5.17) DrawPattern/ Отметить паттерны на графике? При выборе true паттерны будут обведены прямоугольной меткой. 5.18) PatternCol/ Цвет выделения свечного паттерна. Торговые настройки стратегии Violet (6) Вход осуществляется при выходе цены из зоны c меньшей тиковой плотностью в зону с большей тиковой плотностью (принцип возврата к среднему). Сравнивается текущий уровень тиковой плотности со средним, а также с предыдущим, откуда пришла цена. При этом проверяется нахождение цены в конректной стадии ценовой структуры - формирование структуры, формирование коррекции, удлинение структуры либо удлинение коррекции. Вход на каждой отдельной фазе можно включать и отключать, а также расставлять приоритеты сделкам. Если в рынке имеется сделка по контретной фазе и появился сигнал на вход по другой фазе ценовой структуры - текущая сделка может быть модифицирована или закрыта. 6.1) Magic/ Магический номер советника. 6.2) Slippage/ Проскальзывание в пунктах. 6.3) Prolongstr/ Вкл. вход на удлинение структуры 6.4) PriProStr/ Приорит-ть входа на удлинение структуры 6.5) Fat2AverPS/ Коэф. толстого уровня (от среднего) для удл. стр. 6.6) Fat2ThinPS/ Отношение толстого уровня к тонкому для удл. стр. 6.7) PS_KTP/ Коэф. свинга для тейк-профита (удлин. стр.) 6.8) PS_KSL/ Коэф. свинга для стоп-лосса (удлин. стр.) Рассчитывается длина свинга, на удлинении которого мы входим в рынок, и от этой величины получаем значения тейк-профита и стоп-лосс в зависимости от заданных коэффициентов 6.9) Prolongcor/ Вкл. вход на удлинение коррекции 6.10) PriProCor/ Приорит-ть входа на удлинение коррекции 6.11) Fat2AverPC/ Коэф. толстого уровня (от среднего) для удл. кор. 6.12) Fat2ThinPC/ Отношение толстого уровня к тонкому для удл. кор. 6.13) ProcMinPC/ Миним. коррекция в % от главного свинга для входа 6.14) ProcMaxPC/ Максим. коррекция в % от главного свинга для входа ProcMinPC и ProcMaxPC ограничивают возможность входа на разных откатах. Откат считается от текущего нахождения цены. Например, коррекция уже могла быть сформирована в 80% от величины основного свинга, но цена вернулась на величину 20% - вход будет осуществлён, если удовлетворяет требованиям минимальной и максимальной коррекции 6.15) PCo_KTP/ Коэф. свинга для тейк-профита (удлин. коррек.) 6.16) PCo_KSL/ Коэф. свинга для стоп-лосса (удлин. коррек.) Коэффициенты применяются к последнему основному свингу, от которого формируется коррекция 6.17) PCo_MinSL/ Миним. размер стоп-лосса в пунктах (удлин. коррек.) 6.18) FormStr/ Вкл. вход на формирование структуры 6.19) PriForStr/ Приорит-ть входа на формирование структуры 6.20) Fat2AverFS/ Коэф. толстого уровня (от среднего) для форм. стр. 6.21) Fat2ThinFS/ Отношение толстого уровня к тонкому для форм. стр. 6.22) ProcBackMin/ Миним. % коррекции от свинга для входа 6.23) ProcBackMax/ Макс. % коррекции от свинга для входа 6.24) ProcFactMax/ Ограничение по макс. % от свинга, уже сформир. от коррекции Рассчитывается фактическа коррекция от текущей цены Bid и сравнивается с Минимальным и максимальным % коррекции для входа, независимо от того, какой величины коррекция уже сформировалась. ProcFactMax - это максимальный процент от основного свинга, который уже сформировала цена от текущей коррекции. Данный параметр введен для того, чтобы не заходить слишком поздно, когда большая часть нового свинга уже сформировалась. 6.25) FS_KTP/ Коэф. основн. свинга для тейк-профита (форм. струк.) 6.26) FS_KSL/ Коэф. основн. свинга для стоп-лосса (форм. струк.) По умолчанию заложена идея паттерна AB/CD, когда новый основной свинг будет по величине таким же, как предыдущий основной свинг. 6.27) FormCor/ Вкл. вход на формирование коррекции 6.28) PriForCor/ Приорит-ть входа на формирование коррекции 6.29) Fat2AverFC/ Коэф. толстого уровня (от среднего) для форм. кор. 6.30) Fat2ThinFC/ Отношение толстого уровня к тонкому для форм. кор. 6.31) FCor_KTP/ Коэф. основн. свинга для тейк-профита (форм. корр.) 6.32) FCor_KSL/ Коэф. основн. свинга для стоп-лосса (форм. корр.) Основной свинг тот, который сформировался только что, и от которого должна начаться коррекция. 6.33) HowEntry/ Как открыть сделку, если в рынке уже открыта другая сделка Здесь может быть два варианта: 1-закрыть текущую сделку и зайти вновь, 2 - на закрывать текущую, обновить стоп-лосс и тейк-профит (если направление текущей и новой сделок совпадают) Если в рынке открыта сделка того же типа, что и новая, то новая сделка не открывается. 6.34) EqualPrio/ Перезаходить при одинаковой приоритетности? Если тип сделки разный, но приоритетность одинаковая - будет перезаход по новому типу сделки 6.35) LotType/ Метод расчета объема сделки. В зависимости от выбранного метода в следующем параметре может быть установлен либо фиксированный лот, либо процент от депозита, либо расчет лота, исходя из возможных потерь в деньгах. 6.36) LotSet/ Размер лота/процент на сделку/риск в деньгах (в зависимости от метода расчета) 6.37) Attempts/ Макс. кол-во неудачных попыток открыть позицию 6.38) SecPause/ Пауза в секундах между попытками открыть позицию 6.39) StopHour/ Время, после которого советник останавливает торговлю 6.40) StartHour/ Время, после которого советник возобновляет торговлю 6.41) AllClose/ Закрыть все открытые сделки в неторговое время? 6.42) BigVolat/ Фильтр запрета входа при высокой волатильности 6.43) BVbars/ Кол-во баров для средней волат-ти фильтра запрета 6.44) BVlevel/ Коэф. волат-ти от средней для запрета входа 6.45) DicklevExit/ Выход по толстому уровню 6.46) DickMinPips/ Миним. расст-е в пунктах от цены открытия для выхода по толстому уровню 6.47) CriticDepo/ Критический депозит для тестов Во время тестов, если депозит проседает до указанной величины, тестовый прогон останавливается 6.48) SpreadMax/ Максимальный спред для входа 6.49) ScshotsON/ Делать скриншоты экрана на выходе и входе в сделку? Функция скриншотов не работает в режиме тестирования