ArtsiomL
если можно (если это не секретно) можно ли описание по переменным, по настройкам, что за что отвечает, в личку или тут?
Настроек то очень много, а что за что отвечает не понятно...
ИМХО вообще - заведите ветку по конкретно этой сове - я могу и результаты по выкладывать - Вам реклама, мне обучение по работе с совами)))...
Я когда то уже заводил ветку по этой сове. Там же и выкладывал тесты но её ведать удалили потому что я найти не могу.
Ниже приведу настраевымые параметры из совы и их значение.
extern string с2= "Основные параметры";
// здесь все как в обычном илане, массивы значений нужны для тех кому не хватает функционала и хотел бы использовать разные пипстепы,
// разные лотэкспоненты, разные тейки на каждом шаге
extern double LotExponent = 1.2; // умножение лотов в серии по экспоненте для вывода в безубыток. первый лот 0.1, серия: 0.15, 0.26, 0.43 ...
double learr[25]={1.3,1.4,1.5,1.6,1.7,2,2,2,2,1.3,1.3,1.3,1.3,1.3,1.3,1.3,1.3,1.6,1.6,1.6,1.6,1.6,1.6,1.6,1.6}; // dec на каждый шаг если LotExponent=0
extern double TakeProfit = 50; //dec минимальный тейк профит, если = 0 то используем массив значений тейков при установке колен
int tparr[25]={10,10,10,10,20,30,30,30,30,30,30,30,30,30,30,30,30,10,10,10,10,10,10,10,10}; // dec(значения для 5 знаков надо самим забивать!)
extern double PipStep = 50; //dec шаг первого колена
double psarr[25]={70,110,110,110,110,110,110,110,110,110,110,110,90,90,90,90,90,90,170,180,190,200,200,200,200}; //dec пипстепы если PipStep=0(значения для 5 знаков надо самим забивать !)
extern string c9 = "MM";
extern double Lots = 0.01; // теперь можно и микролоты 0.01 при этом если стоит 0.1 то следующий лот в серии будет 0.15
extern double RiskPercent = 2; // первая сделка размером в % от депо, если = 0 то первая сделка открывается размером Lots
extern bool AutoRisk = true; // якщо false, то ризик статичний інакше ризик визначаеться від просадки депозиту.
// эти параметры нужны в том случае когда хотим на последних лотах не докупаться огромными лотами и у же фиксированными например 0,1 - 0,2 - 0,4 - 0,8 - 1,6 - 1,6 - 1,6 ...
extern double LastTrade=100; // после этого ордера размеры ордеров становяться = последнему открытому а тейк переносится в точку безубытка + lastradeprofit
extern double TakeProfitLast = 10.0; //dec минимальный тейк профит когда открыто сделок больше чем LastTrade
extern double LasTradeSize=1; // максимальный размер открытой сделки в % от депо, например при депо 10 000 размер последней позиции не больше 1 лота
extern int MaxTrades = 50; // максимально количество одновременно открытых ордеров
extern int BarTrades = 1; // На якому барі зчитувати дані індекаторів
extern bool OpenNewCycle = true; // если false, то не открываем следующую серию сделок, т.е. для остановки советника
extern bool AutoPip = false; // если false, то не відключено. Авторозрахунок всіх кооф. відповідно до волатильності ринку.
extern bool AutoTakeProfit = false; // если false, то не включено. Аиставляє тейкпрофіт для основного методу торгівлі.
extern string s11 ="Параметры сделок по тренду";
// эти параметры отвечают за работу советника когда идем докуматься (или пирамидинг) по тренду, общий смысл таков что если NumTr = 2 то по тренду мы фактически идем удвоенным лотом
// таким образом наиболее выгодныо при реализации данной идеи ставить максимальный первоначальный лот небольшой множитель, минимальный шаг ТрендПС, и максимум NumTr (5-6)
// но если не угадали с выбором направления и начинаем усредняться как в обычном илане, то у нас висит приличный "якорь"
extern double TrendPS = 7; //dec шаг открытия колен по тренду, если =0 то по тренду не работаем, нельзя делать меньше или равным уровню стопов
extern double ProfitPerc= 5; //dec если по тренду накоплено прибыли более 10% депозита, то закрываем всю серию с прибылью
extern double MinProfitPips =15; //dec если у нас отрыта серия по тренду и цена пошла против нас, то закрываемся по стоплоссу, который расположен в + на уровне MinProfitPips от точки безубытка
extern double MinProfitPipsOne =2; //dec если у нас отрыта серия по тренду и цена пошла против нас, то закрываемся по стоплоссу, который расположен в + на уровне MinProfitPips от точки безубытка
extern double NumTr=2; // сколько позиций оставлять если цена пошла не в нашу сторону
extern int FDir = 2; // принудительный выбор направления
// если =-1 открытие по сигналу индикатора локального тренда,
// если = 0 то первая сделка всегда и сразу открывается на бай,
// (=1 селл) не ожидая условия на отркрытие и окончания бара,
// =2 - то просто немедленно открыться, в зависимости от глобального тренда
extern string c3= "Вспомогательные параметры";
extern int MagicNumber = 54321; // магик
extern double slip = 3.0; //dec проскальзывание
// бывает нужно ...
extern double PercDown=0; // т.е. если мы "зафиксировали" (т.е. цена уходила далеко не в нашем направлении) просадку на депозите по серии сделок больше 30 % от текущего баланса, то нам надо сматываться с рынка да побыстрее
extern double PercClose=0; // поэтому если мы дошли до 10 % просадки после 30 надо закрываться с таким минусом, дальше соотношение поддерживается, если на 60 % уходили в просадку, то закроемся при 20 %
// чтобы не пользоваться данной функцией надо установит эти параметры равными 0
extern int ComOn=1; // отключить вывод комментариев при =0
extern bool Auto5d = false; // если = true то автоматически пересчитывает котировки на 5 значном дц, если false то на 10 надо умножать все параметры в пипсах самим (пометка для таких параметров dec)
extern string c4= "Параметры связанные с временем";
extern int TFIlanX=0; // таймфрейм на котором илан открывает сделки см. mper при = 5 - H1
// типа период свитчер
extern int nH1=0; // =3 после 3 сделки переключаемся на ТФ Н1
extern int nH4=0; // =5 после 5 сделки переключаемся на тф Н4
extern int nHStop=0; // =5 после 5 сделки переключаемся на тф Н4
extern string c8= "Параметры лока";
// кому надо и сам поставит лок и разрулит, но смысл такой: ставим лок если индикатор trendmagic
// показал другое направление чем серия илана, если лок выставили неудачно и цена пошла против лока, то выставляем новый локовый ордер в противоположенную сторону
// вообщем на таком принципе (обчно наз. качели, лавина, реверсивный мартин) работают ряд экспертов типа хлопмастер, тудасюда, чебурашка, тупой
extern double LockS=0; // пытаемся локировать часть позиций и получить дополнительную прибыль, если =0 то не работает, если =0.5, то локируем 50% позиций серии
extern int LMagN=689; // магический номер для локовой позы
extern int NumLockMin=10; // после какого по счету колена открывать локовый ордер если индикатор глобального тренда изменил направление
extern int NumLoc=15; // после какого по счету колена открывать локовый ордер если количество ордеров просто стало большим
extern int MaxDist=400; //dec максимальное расстояние от первой сделки после которого так же открываем лок
//extern int LockProfitPerc=1; // суммарный заработок в % от депозита при закрытии всех локовых ордеров и серии
extern int LockProfitPerc=1; // суммарный заработок в $ от депозита при закрытии всех локовых ордеров и серии
extern int koridor = 50; // dec расстояние в через который лок переворачивается в пунктах
extern double Lmul = 2; // множитель второго и последующих локовых ордеров
extern int MaxLockTrades = 4; // максиммальное количество локовых ордеров
extern int CCPeriod = 50; // параметр трендового индикатора для открытия лока TrendMagic
extern int ATRPeriod = 5; // параметр трендового индикатора для открытия лока TrendMagic
extern int TMTF = 7; // таймфрейм на котором работает трендовый индикатор
extern int TradeAfterLock = 0; // при =0 если у нас открылся лок, то мы перестаем торговать, = 1 продолжаем торговать
extern double LockFiboPercent=90.8; // рівень фібоначі після якого відбувається перевернення локу
extern double TredKanalFiboPercent=61.8; // рівень фібоначі після якого відбувається перевернення локу
extern double ProboyPercent=20; // Процент істеного пробиття канала
extern double RiskLokPercent=50; // Процент ризику обему локів після якого лок перевертається тільки на обем протележни ордерів із урахуванням вже існуючих локів в сторону руху ціни.
extern bool KoofZmichena=true; // Коефіціент зміщення локу в сторону основного ордера чи іншого локу. Включено при = TRUE
extern bool TralinLock=true; // Коефіціент зміщення локу в сторону основного ордера чи іншого локу. Включено при = TRUE
extern bool TralinLockPips=true; // Розраховувати відстань автоматично після якої тралемо локи. Включено при = TRUE
extern bool LockTride=true; // Докупляти в сторону лока якщо всі індекатори повернуті в сторону лока. Включено при = TRUE
extern bool LockFelterStohastic=true; // Філтер стохастік іедекатора для Lok++ Включено при = TRUE
//extern bool LockFilterMoving=true; // Філтер Moving іедекатора Включено при = TRUE
extern bool LockResizeBigMoving=true; // Динамічна зміна великого Moving. Включено при = TRUE
extern bool LockMACDstop=false; // Виставляємо стоп лост Lock MACD По налаштування тралінга. Включено при = TRUE
extern string _tmp2_ = " --- i-Regr --- с большим периодом опеределяем глобальный тренд";
// по данному индикатору с этими настройками определяем "глобальный тренд" против которого никогда не открываемся (первая сделка)
// вообщем это и определяет сливаемость данного советника, если ошиблись и открылись не туда, то за 2000 пунктов сольемся (если без лока и вошли больше чем 5 % депо, на некотрых тестах и проходит)
// главное чтобы этим индикатором поймать разворот глобального тренда !
// для более гибкой работы можно делать период и таймфрейм меньше, например (параметры попорядку) 3, 1.5, 2, 0, 800, 5, 0
extern bool IndOff1=false; // отключение индикатор при = TRUE
extern int Regr.degree1 = 6; // порядок регрессии
extern double Regr.kstd1 = 5; // ширина канала, если =0 то рисуется только средняя линия
extern int kanal=2; // вариант работы с границами канал, при =2 не открывааем позиции за границами канала, =1 только за пределами одной границы, = 0 не учитываем границы только измененгие основной линии регресс
int Regr.shift1 = 0; // смещение относительно текущего бара
extern int SPer = 170; // период баров
extern int TFS=8; // таймфрейм на котором работает индикатор,
extern int invert=0; // если = 0 то по тренду, если =1 то работаем против глобального тренда, можно использовать с локом
// если лок размером больше суммы открытых позиций в серии, то теоретический при invert=1; мы всегда закроемся в +
extern string _tmp4 = " --- Moving Average --- с большим периодом опеределяем глобальный тренд";
extern double MovingPeriod = 144;// Період Moving Average
extern double MovingShift = 0;// Зміщення Moving Average
extern int MovingTF = 0;// Період графика Moving Average
extern string _tmp12_ = " --- Moving Average --- с малым периодом";
extern bool IndOff2=false; // отключение индикатор при = TRUE
extern double MovingPeriod_M = 1;// Період Moving Average
extern double MovingShift_M = 0;// Зміщення Moving Average
extern int MovingTF_M = 1;// Період графика Moving Average
extern string _tmp3_ = " --- i-Reg --- с малым периодом";
// по данному индикатору с этими настройками мы докупаемся если цена пошла против нас, этот же индикатор используется при закрытии и открытии локовых позиций
// для более устойчивой работы можно увеличивать период и ТФ, например (параметры попорядку) 1, 3,1.5, 0, 800, 5
extern int Regr.degree1mall = 3; // порядок регрессии
extern double Regr.kstd1mall = 1.5; // ширина канала, если =0 то рисуется только средняя линия
int Regr.shift1mall = 0; // смещение относительно текущего бара
extern int SPermall = 20; // период баров
extern int TFSmall=1; // таймфрейм на котором работает индикатор
//нннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннн
extern bool UseEquityStop = FALSE;
extern double TotalEquityRisk = 20.0;
extern int timeStop = 0; // Час очікування після просадки 0-не используем трал
int StopON = 0;
bool UseTimeOut = FALSE;
double MaxTradeOpenHours = 48.0;
extern string t2 = " параметры трейлинга";
// кто пользуется трейлингом, пожалста ...
extern int UseTrailingStop = 0; // 0-не используем трал, 1 - ступенчатый трал, 2 - трал типа есмарт
extern int ProfitTrailDist = 30; //dec расстояние от точки безубытка, после которой включаем трал //+------------------------------------------------------------------+
extern int TrailDist = 80; //dec расстояние на котором тянется стоплосс //| ТРЕЙЛИНГ СТАНДАРТНЫЙ-СТУПЕНЧАСТЫЙ |
extern int TrailStep = 10; //dec модифицируем ордера каждые 5 пунктов //| Функции передаётся тикет позиции, расстояние от курса открытия, |
extern int NumIT = 3; // после какого количества сделок включается трал //| на котором трейлинг запускается (пунктов) и "шаг", с которым он переносится (пунктов) |
//| Пример: при +30 стоп на +10, при +40 - стоп на +20 и т.д. |
extern double xtral=2; // означает что, расстояние от точки безубытка до стоплосса в xtral раз меньше чем от точки бу до цены, например цена ушла на 90 п в +, значит стоп на уровне 30 п в плюс переносим
extern bool RSIOff=true; // отключение RSI при = false
extern string _tmp4_ = " --- RSI --- фільтер";
extern double RsiMinimum = 35.0; // нижняя граница RSI
extern double RsiMaximum = 68.0; // верхняя граница RSI
extern int Rsi_s = 14; // значення RSI
extern int PeriodRSI = 60; // значення таймфрейма RSI
extern string _tmp6_ = " ---LOK RSI --- фільтер";
extern double LokRsiMinimum = 35.0; // нижняя граница RSI
extern double LokRsiMaximum = 68.0; // верхняя граница RSI
extern int LokRsi_s = 14; // значення RSI Для відкриття лок
extern int LokPeriodRSI = 60; // значення таймфрейма RSI для відкриття лок
extern string SS="---------------- Stochastic Філтер Settings";
extern bool StohasticOff=true; // отключение RSI при = false
extern double KPeriod=200; //%k period
extern double DPeriod=20; //%d period
extern double Slowing=20; //slowing
extern double SimpleZoneBuy=50; //zone buy
extern double SimpleZoneSell=50; //zone sell
extern bool ExtendedZone=false; //you have more option for the buy/sell zones
extern double CloseLevelUpBuy=70; //the buy orders are closed when this level is reached
extern double EndZoneBuy=20; //the zone buy starts at this level
extern double StartZoneBuy=0; //the zone buy finishes at this level
extern double CloseLevelDnBuy=0; //the buy orders are closed when this level is reached
//the ea takes buy orders between the two following levels
//the ea takes sell orders between the two following levels
extern double CloseLevelUpSell=100; //the sell orders are closed when this level is reached
extern double EndZoneSell=100; //the zone sell starts at this level
extern double StartZoneSell=70; //the zone sell finishes at this level
extern double CloseLevelDnSell=20; //the sell orders are closed when this level is reached
extern string _tmp7_ = " --- Moving Average --- Стратегія";
extern bool MuvOff=true; // отключение RSI при = false
extern double DecreaseFactor = 3;
extern double sMovingPeriod = 8;
extern double sMovingShift = 0;
extern double Deferencial = 50;// к-ть пунктів проходу ціни після пересікання мувінга
extern bool StopLostOff=true; // якщо true то StopLost=0
extern double StopLost = 50;
extern bool sTikeProfitOff=true; // якщо true то TikeProfit=0
extern double sTikeProfit = 20;
extern bool MuvFilter=false; // отключение Moving Average --- с большим периодом опеределяем глобальный тренд при = false
extern bool MovRsiFilter=true; // отключение RSI для Moving Average --- при = false
extern string _tmp8_ = " --- Девергенція Конвергенція MACD --- Стратегія";
extern bool MACDOff=true; // отключение RSI при = false
extern color ColorBull = Blue;
extern color ColorBear = Red;
extern bool displayAlert = false;//true;
extern bool English = false;
//Для MACD
extern int i_fastEMA = 12;
extern int i_slowEMA = 26;
extern int i_signalMA = 9;
extern int DeferencialCin = 30;
//----------------------------------------------------------
Параметры которые не настраиваются
//нннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннннн
int mper[10]={0,1,5,15,30,60,240,1440,10080,43200};
int TFIlan=0;
int ccc=0;
int KoofZmenshenaLok=1;// коефіцієнт зменшення коридору перевернення лок
int NewLok=0;// Останній локовий ордер
int OldLok=0;// Попередній номер локового ордера
double lota[100]; // лоты
int modea[100]; // тип ордера OP_BUY 0 , OP_SELL 1 , OP_BUYLIMIT 2 , OP_SELLLIMIT 3 , OP_BUYSTOP 4 , OP_SELLSTOP 5
double opa[100]; // цена открытия
double sla[100]; // стоплосс
double tpa[100]; // профит
string comma[100]; // комментарии
datetime tima[100]; // время открытия сделки
double profa[100];
int ticka[100];
double DataLockOrders[100];// масив оредрів які мають лок
int NumberDataLockOrders[100];// масив оредрів які мають лок
int Vidkat=0;// Попередній номер локового ордера
double LinePadtrimka=0;// Лінія підтримки канала
double LineOpir=0;// Лінія опору канала
int MACDZnak=0;// Знак при якому було відкрито ордер
double MACDVolume=0;// Значення MACD