generic v13.19.5.mq4
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «generic v13.19.5.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Советник для платформы MetaTrader 4, предназначенный для автоматической торговли на основе сигналов нескольких технических индикаторов. Использует Bollinger Bands, Commodity Channel Index, Moving Average и OsMA для формирования сигналов на открытие и закрытие позиций. Поддерживает работу с несколькими ордерами одновременно с контролем рисков и различными фильтрами.
Настройки программы
| Настройка | Описание |
|---|---|
| Settings_10 | Раздел настроек — Текстовый разделитель группы настроек размера ордеров |
| Settings_11 | Подраздел настроек — Текстовый разделитель подгруппы общих настроек лота |
| Âêëþ÷åíèå / îòêëþ÷åíèå ôèêñèðîâàííîãî ëîòà (Fixed_Lot) | Фиксированный лот — Включение или отключение фиксированного размера лота; при выключении лот рассчитывается динамически от баланса |
| Èñõîäíûé ðàçìåð ëîòà äëÿ äåïîçèòà â $1000 (Lots) | Размер лота — Исходный размер лота для расчёта при динамическом режиме, рассчитан для депозита в $1000 |
| Óâåëè÷åíèå ëîòà ïîñëå ñåðèè óáûòî÷íûõ îðåäðîâ (Lot_Multiple) | Множитель лота — Увеличение размера лота после серии убыточных ордеров |
| Max_Orders | Максимум ордеров — Максимальное количество одновременно открытых ордеров одного направления |
| Order_StepDistance | Шаг между ордерами — Расстояние в пунктах между ордерами одного направления |
| Order_TotalProfit | Прибыль серии — Общая прибыль в пунктах для автоматического закрытия серии ордеров |
| Settings_20 | Раздел настроек — Текстовый разделитель группы настроек закрытия ордеров |
| Settings_21 | Подраздел настроек — Текстовый разделитель подгруппы стоп-лосса и тейк-профита |
| Óðîâåíü Stop Loss â ïï. (Stop_Loss) | Стоп-лосс — Уровень стоп-лосса в пунктах от цены открытия |
| Óðîâåíü Take Profit â ïï. (Take_Profit) | Тейк-профит — Уровень тейк-профита в пунктах от цены открытия |
| Settings_22 | Раздел настроек — Текстовый разделитель группы настроек закрытия по времени |
| Çàêðûòèå îðäåðîâ ïî ëèìèòó âðåìåíè íà óäåðæàíèå îðåäðà, åñëè äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûë (Close_by_TimeLimit | Закрытие по времени — Закрытие ордеров по лимиту времени удержания, если достигнуто определённое значение прибыли |
| Ëèìèò âðåìåíè íà çàêðûòèå îðäåðà ñ ìîìåíòà åãî îòêðûòèÿ (â ìèíóòàõ) (TimeLimit) | Лимит времени — Лимит времени на закрытие ордера с момента его открытия в минутах |
| Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà (TimeLimit_MinProfit) | Мин. прибыль для закрытия — Минимальный необходимый размер прибыли в пунктах для закрытия ордера по времени |
| Settings_23 | Раздел настроек — Текстовый разделитель группы закрытия по Bollinger Bands |
| Çàêðûòèå îðäåðà, åñëè öåíà âûøëà çà âåðõíþþ ãðàíèöó êàíàëà è äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûë (Close_by_BB) | Закрытие по BB — Закрытие ордера, если цена вышла за верхнюю границу канала и достигнуто необходимое значение прибыли |
| Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà ïî ÂÂ (â ïèïñàõ) (BB_MinProfit) | Мин. прибыль BB — Минимальный необходимый размер прибыли в пунктах для закрытия ордера по Bollinger Bands |
| Settings_24 | Раздел настроек — Текстовый разделитель группы закрытия по CCI |
| Çàêðûòèå ïî èíäèêàòîðó Commodity Channel Index (Close_by_CCI) | Закрытие по CCI — Закрытие ордера по сигналу индикатора Commodity Channel Index |
| Settings_25 | Раздел настроек — Текстовый разделитель группы закрытия по OsMA |
| Çàêðûòèå îðäåðà, åñëè öåíà âûøëà çà âåðõíþþ ãðàíèöó êàíàëà è äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûë (Close_by_OsMA) | Закрытие по OsMA — Закрытие ордера, если цена вышла за верхнюю границу канала и достигнуто необходимое значение прибыли |
| Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà ïî ÂÂ (â ïèïñàõ) (OsMA_MinProfit) | Мин. прибыль OsMA — Минимальный необходимый размер прибыли в пунктах для закрытия ордера по OsMA |
| Settings_26 | Раздел настроек — Текстовый разделитель группы закрытия в безубыток |
| Èñïîëüçîâàòü ïåðåâîä â áåçóáûòîê (ðàáîòàåò ïðè ñëîâèè îòñóòñâèÿ Traiiling Stop) (Close_by_Breakeven) | Перевод в безубыток — Использование перевода в безубыток (работает при отсутствии активного Trailing Stop) |
| Åñëè òåêóùàÿ öåíà óõîäèò â ïðîôèò íà BE_InitLevel ïóíêòîâ - âûñòàâëÿåòñÿ Stop Loss (BE_InitLevel) | Уровень для BE — Если текущая цена уходит в профит на BE_InitLevel пунктов — выставляется стоп-лосс |
| Stop Loss âûñòàâëÿåòñÿ íà BE_Profit ïóíêòîâ îò öåíû îòêðûòèÿ (BE_Profit) | Прибыль BE — Сдвиг стоп-лосса на BE_Profit пунктов от цены открытия |
| Settings_27 | Раздел настроек — Текстовый разделитель группы настроек трейлинг-стопа |
| Çàêðûâàòü ñäåëêè ïî Trailling Stop (Close_by_Trail) | Трейлинг-стоп — Включение функции трейлинг-стопа для закрытия сделок |
| Èñõîäíîå ðàññòîÿíèå òðåéëèíãà (ïèïñàõ) (íå ìåíüøå MarketInfo(Symbol(),MODE_STOPLEVEL), áîëüøå Trl_di (Trl_dist_1) | Расстояние трейла 1 — Исходное расстояние трейлинга в пунктах (не меньше стоп-уровня брокера) |
| Ðàññòîÿíèå òðåéëèíãà (â ïèïñàõ) ïîñëå äîñòèæåíèÿ öåíîé çíà÷åíèÿ Level_1 (Trl_dist_2) | Расстояние трейла 2 — Расстояние трейлинга в пунктах после достижения ценой значения Level_1 |
| Ðàññòîÿíèå òðåéëèíãà (â ïèïñàõ) ïîñëå äîñòèæåíèÿ öåíîé çíà÷åíèÿ Level_2 (Trl_dist_3) | Расстояние трейла 3 — Расстояние трейлинга в пунктах после достижения ценой значения Level_2 |
| Settings_30 | Раздел настроек — Текстовый разделитель группы настроек открытия ордеров |
| Settings_31 | Подраздел настроек — Текстовый разделитель подгруппы сигналов первого ордера |
| Îòêðûâàòü ñäåëêè ïî BB (Open_by_BB_1) | Открытие по BB 1 — Открытие сделок по сигналу Bollinger Bands для первого ордера |
| Îòêðûâàòü ñäåëêè ïî ÑÑI (Open_by_CCI_1) | Открытие по CCI 1 — Открытие сделок по сигналу CCI для первого ордера |
| Îòêðûâàòü ñäåëêè ïî MA (Open_by_MA_1) | Открытие по MA 1 — Открытие сделок по сигналу Moving Average для первого ордера |
| Îòêðûâàòü ñäåëêè ïî OsMA (Open_by_OsMA_1) | Открытие по OsMA 1 — Открытие сделок по сигналу OsMA для первого ордера |
|  äîïîëíåíèå èñïîëüçîâàòü èíäèêàòîð ñêà÷êà öåíû (Spike_Filter_1) | Фильтр скачков 1 — Дополнительное использование индикатора скачка цены для первого ордера |
| Îãðàíè÷åíèå íà îòêðûòèå íîâûõ ñäåëîê â óñëîâèÿõ ñëèøêîì íèçêîé è âûñîêîé âîëàòèëüíîñòè (Volatility_Filter_1) | Фильтр волатильности 1 — Ограничение на открытие новых сделок при слишком низкой или высокой волатильности для первого ордера |
| Îòêðûâàòü ñäåëêè òîëüêî â íàïðàâëåíèè òðåíäà (Trend_Filter_1) | Фильтр тренда 1 — Открытие сделок только в направлении тренда для первого ордера |
| Settings_32 | Раздел настроек — Текстовый разделитель подгруппы сигналов второго ордера |
| Îòêðûâàòü ñäåëêè ïî BB (Open_by_BB_2) | Открытие по BB 2 — Открытие сделок по сигналу Bollinger Bands для второго ордера |
| Îòêðûâàòü ñäåëêè ïî ÑÑI (Open_by_CCI_2) | Открытие по CCI 2 — Открытие сделок по сигналу CCI для второго ордера |
| Îòêðûâàòü ñäåëêè ïî MA (Open_by_MA_2) | Открытие по MA 2 — Открытие сделок по сигналу Moving Average для второго ордера |
| Îòêðûâàòü ñäåëêè ïî OsMA (Open_by_OsMA_2) | Открытие по OsMA 2 — Открытие сделок по сигналу OsMA для второго ордера |
|  äîïîëíåíèå èñïîëüçîâàòü èíäèêàòîð ñêà÷êà öåíû (Spike_Filter_2) | Фильтр скачков 2 — Дополнительное использование индикатора скачка цены для второго ордера |
| Îãðàíè÷åíèå íà îòêðûòèå íîâûõ ñäåëîê â óñëîâèÿõ ñëèøêîì íèçêîé è âûñîêîé âîëàòèëüíîñòè (Volatility_Filter_2) | Фильтр волатильности 2 — Ограничение на открытие новых сделок при слишком низкой или высокой волатильности для второго ордера |
| Îòêðûâàòü ñäåëêè òîëüêî â íàïðàâëåíèè òðåíäà (Trend_Filter_2) | Фильтр тренда 2 — Открытие сделок только в направлении тренда для второго ордера |
| Settings_34 | Раздел настроек — Текстовый разделитель группы ограничения убыточных серий |
| Íå îòêðûâàòü íîâóþ ñäåëêó, åñëè ïðåäûäóùàÿ áûëà óáûòî÷íîé è ïðîøëî ìåíüøå çàäàííîãî âðåìåíè ñ ìîìåíò (Restrict_Losses) | Ограничение убытков — Не открывать новую сделку, если предыдущая была убыточной и прошло меньше заданного времени |
| Ëèìèò âðåìåíè ñ ìîìåíòà îòêðûòèÿ óáûòî÷íîé ñäåëêè (Restrict_TimeLimit) | Лимит времени ограничения — Лимит времени с момента открытия убыточной сделки для повторного открытия |
| Settings_40 | Раздел настроек — Текстовый разделитель группы настроек индикаторов |
| Settings_41 | Подраздел настроек — Текстовый разделитель подгруппы настроек Bollinger Bands |
| Òàéìôðåéì BB (BB_TimeFrame) | Таймфрейм BB — Таймфрейм для расчёта Bollinger Bands |
| Ïåðèîä BB (BB_Period) | Период BB — Период Bollinger Bands |
| Êîë-âî ñòàíäàðòíûõ îòêëîíåíèé BB (BB_StDev) | Стандартные отклонения BB — Количество стандартных отклонений для канала Bollinger Bands |
| Ñäâèã BB (BB_Shift) | Сдвиг BB — Горизонтальный сдвиг Bollinger Bands |
| Îòñòóï çà ïðåäåëû êàíàëà BB äëÿ îòêðûòèÿ îðäåðà â ïèïñàõ (BB_Open_Level) | Уровень открытия BB — Отступ за пределы канала BB для открытия ордера в пунктах |
| Îòñòóï çà ïðåäåëû êàíàëà BB äëÿ çàêðûòèÿ îðäåðà â ïèïñàõ (BB_Close_Level) | Уровень закрытия BB — Отступ за пределы канала BB для закрытия ордера в пунктах |
| Settings_42 | Раздел настроек — Текстовый разделитель подгруппы настроек CCI |
| Òàéìôðåéì CCI (CCI_TimeFrame) | Таймфрейм CCI — Таймфрейм для расчёта Commodity Channel Index |
| Ïåðèîä CCI (CCI_Period) | Период CCI — Период индикатора CCI |
| Òèï öåíû CCI (0 - PRICE_CLOSE; 1 - PRICE_OPEN; 2 - PRICE_HIGH; 3 - PRICE_LOW; 4 - PRICE_MEDIAN; 5 - (CCI_Applied_Price) | Тип цены CCI — Тип цены для расчёта CCI (0 — PRICE_CLOSE, 1 — PRICE_OPEN и т.д.) |
| Ñäâèã CCI (CCI_Shift) | Сдвиг CCI — Горизонтальный сдвиг индикатора CCI |
| Ãðàíèöà CCI, ïðè ïðåîäîëåíèè êîòîðîé ôîðìèðóåòñÿ ñèãíàë (CCI_Signal_Level) | Уровень сигнала CCI — Граница CCI, при пересечении которой формируется сигнал |
| Settings_43 | Раздел настроек — Текстовый разделитель подгруппы настроек Moving Average |
| Òàéìôðåéì èíèäêàòîðà Moving Average (MA_TimeFrame) | Таймфрейм MA — Таймфрейм для расчёта Moving Average |
| Ïåðèîä èíèäêàòîðà Moving Average (MA_Period) | Период MA — Период индикатора Moving Average |
| Ìåòîä óñðåäíåíèÿ (0 - MODE_SMA; 1 - MODE_EMA; 2 - MODE_SMMA; 3 - MODE_LWMA) (MA_Price_Method) | Метод усреднения MA — Метод усреднения (0 — MODE_SMA, 1 — MODE_EMA, 2 — MODE_SMMA, 3 — MODE_LWMA) |
| Òèï öåíû (0 - PRICE_CLOSE; 1 - PRICE_OPEN; 2 - PRICE_HIGH; 3 - PRICE_LOW; 4 - PRICE_MEDIAN; 5 - PRIC (MA_Applied_Price) | Тип цены MA — Тип цены для расчёта Moving Average (0 — PRICE_CLOSE, 1 — PRICE_OPEN и т.д.) |
| Ñäâèã ÌÀ (MA_Shift) | Сдвиг MA — Горизонтальный сдвиг Moving Average |
| Ðàçìåð îòñòóïà îò MM â ïèïñàõ (MA_Signal_Level) | Уровень сигнала MA — Размер отступа от MA в пунктах для формирования сигнала |
| Settings_44 | Раздел настроек — Текстовый разделитель подгруппы настроек идентификации скачков цены |
| Òàéìôðåéì äëÿ ðàñ÷åòà ñâå÷è (áàðà) (Bar_TimeFrame) | Таймфрейм баров — Таймфрейм для расчёта свечей (баров) анализа ценового диапазона |
| Êîë-âî áàðîâ, çà êîòîðîå ðàñ÷èòûâàåòñÿ èçìåíåíèå öåíû (Bar_Shift) | Сдвиг баров — Количество баров, за которое рассчитывается изменение цены |
| Ìèíèìàëüíîå ðàñòîÿíèå â ïèïñàõ, êîòîðîå äîëæíà ïðîéòè öåíà çà óêàçàííîå êîë-âî áàðîâ (Min_PriceRange) | Мин. ценовой диапазон — Минимальное расстояние в пунктах, которое цена должна пройти за указанное количество баров |
| Ìàêñèìàëüíîå ðàñòîÿíèå â ïèïñàõ, êîòîðîå äîëæíà ïðîéòè öåíà çà óêàçàííîå êîë-âî áàðîâ (Max_PriceRange) | Макс. ценовой диапазон — Максимальное расстояние в пунктах, которое цена должна пройти за указанное количество баров |
| Settings_45 | Раздел настроек — Текстовый разделитель подгруппы настроек OsMA |
| Òàéìôðåéì èíèäêàòîðà OsMA (OsMA_TimeFrame) | Таймфрейм OsMA — Таймфрейм для расчёта Moving Average of Oscillator |
| Ïåðèîä áûñòðîé ñðåäíåé (OsMA_FastEMA) | Быстрая EMA OsMA — Период быстрой скользящей средней для OsMA |
| Ïåðèîä ìåäëåííîé ñðåäíåé (OsMA_SlowEMA) | Медленная EMA OsMA — Период медленной скользящей средней для OsMA |
| Ïåðèîä ñèãíàëüíîé ëèíèè (OsMA_SignalSMA) | Сигнальная SMA OsMA — Период сигнальной линии для OsMA |
| Îòñòóï çà ïðåäåëû êàíàëà (OsMA_Limit) | Лимит OsMA — Отступ за пределы канала для подтверждения сигнала OsMA в пунктах |
| Settings_46 | Раздел настроек — Текстовый разделитель подгруппы ограничений по волатильности |
| Ìèíèìàëüíûé óðîâåíü âîëàòèëüíîñòè â ïèïñïàõ (êàíàë BB) (MinVolatility) | Мин. волатильность — Минимальный уровень волатильности в пунктах (канал BB) для разрешения торговли |
| Ìàêñèìàëüíûé óðîâåíü âîëàòèëüíîñòè â ïèïñàõ (èçìåíåíèå öåíà çà ïîñëåäíèå 23 ÷àñà) (MaxDailyRange) | Макс. дневной диапазон — Максимальный уровень волатильности в пунктах (изменение цены за последние 23 часа) |
| Settings_50 | Раздел настроек — Текстовый разделитель группы прочих настроек |
| Çàïèñü èíôîðìàöèè î ðàáîòå ñîâòåíèêà â ëîã ôàéëà (WriteLogFile) | Запись в лог — Запись информации о работе советника в лог-файл |
| Ìàêñèìàëüíî äîïóñòèìûé ñïðåä (Max_Spread) | Макс. спред — Максимально допустимый спред в пунктах для открытия ордеров |
| Ìàêñèìàëüíî äîïóñòèìîå ïðîñêàëüçûâàíèå (Slippage) | Проскальзывание — Максимально допустимое проскальзывание в пунктах |
| Êîììåíòàðèé ê ñäåëêå (Order_Comment) | Комментарий ордера — Комментарий, присваиваемый каждой сделке |
| Óíèêàëüíûé íîìåð îðäåðà (MagicNumber) | Магический номер — Уникальный номер ордера для идентификации позиций советника |
| Settings_60 | Раздел настроек — Текстовый разделитель группы условий торгового времени |
| Settings_61 | Подраздел настроек — Текстовый разделитель подгруппы закрытия позиций в пятницу |
| Çàêðûòü ïîçèöèþ â ïÿòíèöó (Friday_Close) | Закрытие в пятницу — Закрытие позиции в пятницу в заданное время |
| ×àñ çàêðûòèÿ ïîçèöèè (End_Trade_Hour) | Час закрытия — Час закрытия позиции в пятницу |
| Âðåìÿ çàêðûòèÿ ïîçèöèè (End_Trade_Minute) | Минута закрытия — Минута закрытия позиции в пятницу |
| Settings_62 | Раздел настроек — Текстовый разделитель подгруппы единых времён торговли для всех дней |
Поиск по коду файла
#property version "13.19"
/*-------------------------------------------------------------------------------------------------------------------+
| Â Õ Î Ä Í Û Å Ï Å Ð Å Ì Å Í Í Û Å |
+-------------------------------------------------------------------------------------------------------------------*/
extern string Settings_10 = "1. O R D E R S I Z E S E T T I N G S";
extern string Settings_11 = " 1.1. General Lot Settings";
extern bool Fixed_Lot = True; // Âêëþ÷åíèå / îòêëþ÷åíèå ôèêñèðîâàííîãî ëîòà
extern double Lots = 0.1; // Èñõîäíûé ðàçìåð ëîòà äëÿ äåïîçèòà â $1000
extern bool Lot_Multiple = True; // Óâåëè÷åíèå ëîòà ïîñëå ñåðèè óáûòî÷íûõ îðåäðîâ
extern int Max_Orders = 2;
extern int Order_StepDistance = 350;
extern int Order_TotalProfit = 25;
extern string Settings_20 = "2. O R D E R C L O S E C O N D I T I O N S";
extern string Settings_21 = " 2.1. Stop Loss and Take Profit settings";
extern int Stop_Loss = 550; // Óðîâåíü Stop Loss â ïï.
extern int Take_Profit = 550; // Óðîâåíü Take Profit â ïï.
extern string Settings_22 = " 2.2. Close by Order holding time limit";
extern bool Close_by_TimeLimit = True; // Çàêðûòèå îðäåðîâ ïî ëèìèòó âðåìåíè íà óäåðæàíèå îðåäðà, åñëè äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûëè
extern int TimeLimit = 15; // Ëèìèò âðåìåíè íà çàêðûòèå îðäåðà ñ ìîìåíòà åãî îòêðûòèÿ (â ìèíóòàõ)
extern int TimeLimit_MinProfit = 100; // Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà
extern string Settings_23 = " 2.3. Close by Bollinger Bands";
extern bool Close_by_BB = True; // Çàêðûòèå îðäåðà, åñëè öåíà âûøëà çà âåðõíþþ ãðàíèöó êàíàëà è äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûëè
extern int BB_MinProfit = 75; // Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà ïî ÂÂ (â ïèïñàõ)
extern string Settings_24 = " 2.4. Close by Commodity Channel Index";
extern bool Close_by_CCI = False; // Çàêðûòèå ïî èíäèêàòîðó Commodity Channel Index
extern string Settings_25 = " 2.5. Close by Moving Average of Oscillator";
extern bool Close_by_OsMA = True; // Çàêðûòèå îðäåðà, åñëè öåíà âûøëà çà âåðõíþþ ãðàíèöó êàíàëà è äîñòèãíóòî îïðåäåëåííîå çíà÷åíèå ïðèáûëè
extern int OsMA_MinProfit = 75; // Ìèíèìàëüíî íåîáõîäèìûé ðàçìåð ïðèáûëè äëÿ çàêðûòèÿ îðäåðà ïî ÂÂ (â ïèïñàõ)
extern string Settings_26 = " 2.6. Close by Breakeven";
extern bool Close_by_Breakeven = False; // Èñïîëüçîâàòü ïåðåâîä â áåçóáûòîê (ðàáîòàåò ïðè ñëîâèè îòñóòñâèÿ Traiiling Stop)
extern int BE_InitLevel = 70; // Åñëè òåêóùàÿ öåíà óõîäèò â ïðîôèò íà BE_InitLevel ïóíêòîâ - âûñòàâëÿåòñÿ Stop Loss
extern int BE_Profit = 10; // Stop Loss âûñòàâëÿåòñÿ íà BE_Profit ïóíêòîâ îò öåíû îòêðûòèÿ
extern string Settings_27 = " 2.7. Close by Trailling Stop";
extern bool Close_by_Trail = False; // Çàêðûâàòü ñäåëêè ïî Trailling Stop
extern int Trl_dist_1 = 180; // Èñõîäíîå ðàññòîÿíèå òðåéëèíãà (ïèïñàõ) (íå ìåíüøå MarketInfo(Symbol(),MODE_STOPLEVEL), áîëüøå Trl_dist_2 è Trl_dist_3)
extern int Trl_dist_2 = 40; // Ðàññòîÿíèå òðåéëèíãà (â ïèïñàõ) ïîñëå äîñòèæåíèÿ öåíîé çíà÷åíèÿ Level_1
extern int Trl_dist_3 = 25; // Ðàññòîÿíèå òðåéëèíãà (â ïèïñàõ) ïîñëå äîñòèæåíèÿ öåíîé çíà÷åíèÿ Level_2
extern string Settings_30 = "3. O R D E R O P E N C O N D I T I O N S";
extern string Settings_31 = " 3.1. FIRST ORDER - Indicators' signals";
extern bool Open_by_BB_1 = True; // Îòêðûâàòü ñäåëêè ïî BB
extern bool Open_by_CCI_1 = False; // Îòêðûâàòü ñäåëêè ïî ÑÑI
extern bool Open_by_MA_1 = True; // Îòêðûâàòü ñäåëêè ïî MA
extern bool Open_by_OsMA_1 = False; // Îòêðûâàòü ñäåëêè ïî OsMA
extern bool Spike_Filter_1 = False; //  äîïîëíåíèå èñïîëüçîâàòü èíäèêàòîð ñêà÷êà öåíû
extern bool Volatility_Filter_1 = False; // Îãðàíè÷åíèå íà îòêðûòèå íîâûõ ñäåëîê â óñëîâèÿõ ñëèøêîì íèçêîé è âûñîêîé âîëàòèëüíîñòè
extern bool Trend_Filter_1 = False; // Îòêðûâàòü ñäåëêè òîëüêî â íàïðàâëåíèè òðåíäà
extern string Settings_32 = " 3.2. SECOND ORDER - Indicators' signals";
extern bool Open_by_BB_2 = True; // Îòêðûâàòü ñäåëêè ïî BB
extern bool Open_by_CCI_2 = True; // Îòêðûâàòü ñäåëêè ïî ÑÑI
extern bool Open_by_MA_2 = True; // Îòêðûâàòü ñäåëêè ïî MA
extern bool Open_by_OsMA_2 = False; // Îòêðûâàòü ñäåëêè ïî OsMA
extern bool Spike_Filter_2 = False; //  äîïîëíåíèå èñïîëüçîâàòü èíäèêàòîð ñêà÷êà öåíû
extern bool Volatility_Filter_2 = False; // Îãðàíè÷åíèå íà îòêðûòèå íîâûõ ñäåëîê â óñëîâèÿõ ñëèøêîì íèçêîé è âûñîêîé âîëàòèëüíîñòè
extern bool Trend_Filter_2 = True; // Îòêðûâàòü ñäåëêè òîëüêî â íàïðàâëåíèè òðåíäà
extern string Settings_34 = " 3.4. Trade Restriction - Consequitive losses";
extern bool Restrict_Losses = False; // Íå îòêðûâàòü íîâóþ ñäåëêó, åñëè ïðåäûäóùàÿ áûëà óáûòî÷íîé è ïðîøëî ìåíüøå çàäàííîãî âðåìåíè ñ ìîìåíòà åå îòêðûòèÿ
extern int Restrict_TimeLimit = 30; // Ëèìèò âðåìåíè ñ ìîìåíòà îòêðûòèÿ óáûòî÷íîé ñäåëêè
extern string Settings_40 = "4. I N D I C A T O R S S E T T I N G S";
extern string Settings_41 = " 4.1. Bollinger Bands";
extern int BB_TimeFrame = PERIOD_M15; // Òàéìôðåéì BB
extern int BB_Period = 13; // Ïåðèîä BB
extern int BB_StDev = 2; // Êîë-âî ñòàíäàðòíûõ îòêëîíåíèé BB
extern int BB_Shift = 1; // Ñäâèã BB
extern int BB_Open_Level = 15; // Îòñòóï çà ïðåäåëû êàíàëà BB äëÿ îòêðûòèÿ îðäåðà â ïèïñàõ
extern int BB_Close_Level = 10; // Îòñòóï çà ïðåäåëû êàíàëà BB äëÿ çàêðûòèÿ îðäåðà â ïèïñàõ
extern string Settings_42 = " 4.2. Commodity Channel Index";
extern int CCI_TimeFrame = PERIOD_M15; // Òàéìôðåéì CCI
extern int CCI_Period = 9; // Ïåðèîä CCI
extern int CCI_Applied_Price = 0; // Òèï öåíû CCI (0 - PRICE_CLOSE; 1 - PRICE_OPEN; 2 - PRICE_HIGH; 3 - PRICE_LOW; 4 - PRICE_MEDIAN; 5 - PRICE_TYPICAL; 6 - PRICE_WEIGHTED)
extern int CCI_Shift = 1; // Ñäâèã CCI
extern int CCI_Signal_Level = 90; // Ãðàíèöà CCI, ïðè ïðåîäîëåíèè êîòîðîé ôîðìèðóåòñÿ ñèãíàë
extern string Settings_43 = " 4.3. Moving Average";
extern int MA_TimeFrame = PERIOD_M15; // Òàéìôðåéì èíèäêàòîðà Moving Average
extern int MA_Period = 9; // Ïåðèîä èíèäêàòîðà Moving Average
extern int MA_Price_Method = 0; // Ìåòîä óñðåäíåíèÿ (0 - MODE_SMA; 1 - MODE_EMA; 2 - MODE_SMMA; 3 - MODE_LWMA)
extern int MA_Applied_Price = 4; // Òèï öåíû (0 - PRICE_CLOSE; 1 - PRICE_OPEN; 2 - PRICE_HIGH; 3 - PRICE_LOW; 4 - PRICE_MEDIAN; 5 - PRICE_TYPICAL; 6 - PRICE_WEIGHTED)
extern int MA_Shift = 0; // Ñäâèã ÌÀ
extern int MA_Signal_Level = 125; // Ðàçìåð îòñòóïà îò MM â ïèïñàõ
extern string Settings_44 = " 4.4. Price Spike Identification";
extern int Bar_TimeFrame = PERIOD_M5; // Òàéìôðåéì äëÿ ðàñ÷åòà ñâå÷è (áàðà)
extern int Bar_Shift = 2; // Êîë-âî áàðîâ, çà êîòîðîå ðàñ÷èòûâàåòñÿ èçìåíåíèå öåíû
extern int Min_PriceRange = 75; // Ìèíèìàëüíîå ðàñòîÿíèå â ïèïñàõ, êîòîðîå äîëæíà ïðîéòè öåíà çà óêàçàííîå êîë-âî áàðîâ
extern int Max_PriceRange = 175; // Ìàêñèìàëüíîå ðàñòîÿíèå â ïèïñàõ, êîòîðîå äîëæíà ïðîéòè öåíà çà óêàçàííîå êîë-âî áàðîâ
extern string Settings_45 = " 4.5. Moving Average of Oscillator";
extern int OsMA_TimeFrame = PERIOD_M15; // Òàéìôðåéì èíèäêàòîðà OsMA
extern int OsMA_FastEMA = 7; // Ïåðèîä áûñòðîé ñðåäíåé
extern int OsMA_SlowEMA = 15; // Ïåðèîä ìåäëåííîé ñðåäíåé
extern int OsMA_SignalSMA = 8; // Ïåðèîä ñèãíàëüíîé ëèíèè
extern int OsMA_Limit = 50; // Îòñòóï çà ïðåäåëû êàíàëà
extern string Settings_46 = " 4.6. Trade Restriction by Volatility";
extern int MinVolatility = 150; // Ìèíèìàëüíûé óðîâåíü âîëàòèëüíîñòè â ïèïñïàõ (êàíàë BB)
extern int MaxDailyRange = 900; // Ìàêñèìàëüíûé óðîâåíü âîëàòèëüíîñòè â ïèïñàõ (èçìåíåíèå öåíà çà ïîñëåäíèå 23 ÷àñà)
extern string Settings_50 = "5. O T H E R S E T T I N G S";
extern bool WriteLogFile = False; // Çàïèñü èíôîðìàöèè î ðàáîòå ñîâòåíèêà â ëîã ôàéëà
extern int Max_Spread = 65; // Ìàêñèìàëüíî äîïóñòèìûé ñïðåä
extern int Slippage = 20; // Ìàêñèìàëüíî äîïóñòèìîå ïðîñêàëüçûâàíèå
extern string Order_Comment = "Generic v13.19"; // Êîììåíòàðèé ê ñäåëêå
extern int MagicNumber = 3100037; // Óíèêàëüíûé íîìåð îðäåðà
extern string Settings_60 = "6. T R A D I N G T I M E C O N D I T I O N S";
extern string Settings_61 = " 6.1. Close deals on Friday";
extern bool Friday_Close = False; // Çàêðûòü ïîçèöèþ â ïÿòíèöó
extern int End_Trade_Hour = 23; // ×àñ çàêðûòèÿ ïîçèöèè
extern int End_Trade_Minute = 55; // Âðåìÿ çàêðûòèÿ ïîçèöèè
extern string Settings_62 = " 6.2. Set the same trading time for all days";
extern bool All_Days_Same_Time = False; // Äëÿ âñåõ äíåé òîðãîâëè èñïîëüçîâàòü îäèíàêîâîå âðåìÿ
input int Open_Hour = 0; // Íà÷àëî òîðâãîëè - çàäàòü ÷àñ
input int Open_Minute = 30; // Íà÷àëî òîðâãîëè - çàäàòü ìèíóòû
input int Pause_Start_Hour = 1; // Îñòàíîâêà òîðãîâëè - çàäàòü ÷àñ
input int Pause_Start_Minute = 0; // Îñòàíîâêà òîðãîâëè - çàäàòü ìèíóòû
input int Pause_Stop_Hour = 22; // Âîçîáíîâëåíèå òîðãâîëè - çàäàòü ÷àñ
input int Pause_Stop_Minute = 0; // Âîçîáíîâëåíèå òîðãâîëè - çàäàòü ìèíóòû
input int Close_Hour = 23; // Îêîí÷àíèå òîðãîâëè - çàäàòü ÷àñ
input int Close_Minute = 59; // Îêîí÷àíèå òîðãîâëè - çàäàòü ìèíóòó
extern string Settings_63 = " 6.3. Set different trading time for each day";
extern bool monday = True; // Òîðãîâàòü â ïîíåäåëüíèê
input string monday_open = "22:00"; // Íà÷àëî òîðâãîëè (íà÷àëî òîðãîâîé ñåññèè)
input string monday_pause_start = "0"; // Îñòàíîâêà òîðãîâëè (íà÷àëî ïàóçû)
input string monday_pause_stop = "0"; // Âîçîáíîâëåíèå òîðãâîëè (îêîí÷àíèå ïàóçû)
input string monday_close = "23:59"; // Îêîí÷àíèå òîðãîâëè (êîíåö òîðãîâîé ñåññèè)
extern bool tuesday = True; // TUESDAY
input string tuesday_open = "00:30";
input string tuesday_pause_start = "01:00";
input string tuesday_pause_stop = "22:00";
input string tuesday_close = "23:59";
extern bool wednesday = True; // WEDNESDAY
input string wednesday_open = "00:30";
input string wednesday_pause_start = "0";
input string wednesday_pause_stop = "0";
input string wednesday_close = "01:00";
extern bool thursday = True; // THURSDAY
input string thursday_open = "22:00";
input string thursday_pause_start = "0";
input string thursday_pause_stop = "0";
input string thursday_close = "23:59";
extern bool friday = True; // FRIDAY
input string friday_open = "00:30";
input string friday_pause_start = "01:00";
input string friday_pause_stop = "22:00";
input string friday_close = "23:59";
extern bool sunday = False; // SUNDAY
input string sunday_open = "08:30";
input string sunday_pause_start = "15:30";
input string sunday_pause_stop = "17:55";
input string sunday_close = "21:35";
static datetime BB_prevtime=0;
static datetime CCI_prevtime=0;
static datetime MA_prevtime=0;
static datetime Bar_prevtime=0;
double start_balance=1000;
double minlot=0.0;
double maxlot=0.01;
int stoplevel=0;
int Count_Sell,Count_Buy;
double _Take_Profit,_Stop_Loss;
double takeprofit,stoploss;
double trailstart,trailsize,trailstep;
int slippage;
int ticksize;
double BB_Low,BB_Up,BB_Main;
double CCI;
int CCI_Signal=0;
double MA_1,MA_2;
int MA_Signal=0;
double Bar_Open;
int Spike_Signal=0;
double OsMA_0,OsMA_1,OsMA_2;
int OsMA_Signal=0;
int Trend;
int last_buy_ticket,last_sell_ticket;
double last_buy_profit=-1,last_sell_profit=-1;
datetime last_sell_close,last_buy_close;
int Buy_Paramets,Sell_Paramets;
#define _TRADE_ 1
#define _PAUSE_ 2
datetime time1,time2,time3,time4;
datetime day_of_trade;
string Day_open,Day_pause_start,Day_pause_stop,Day_close;
string _Open_Hour,_Open_Minute;
string _Pause_Start_Hour,_Pause_Start_Minute;
string _Pause_Stop_Hour,_Pause_Stop_Minute;
string _Close_Hour,_Close_Minute;
int flag_trade;
string InpFileName;
string fileName="EA_Generic";
string InpDirectoryName="LOGS";
string q;
/*-------------------------------------------------------------------------------------------------------------------+
| Ñ Ï Å Ö È À Ë Ü Í À ß Ô Ó Í Ê Ö È ß È Í È Ö È À Ë È Ç À Ö È È |
+-------------------------------------------------------------------------------------------------------------------*/
int OnInit()
{
// код доступен только после оплаты
}
/*-------------------------------------------------------------------------------------------------------------------+
| Ñ Ï Å Ö È À Ë Ü Í À ß Ô Ó Í Ê Ö È ß Ä Å È Í È Ö È À Ë È Ç À Ö È È |
+-------------------------------------------------------------------------------------------------------------------*/
void OnDeinit(const int reason)
{
}
/*-------------------------------------------------------------------------------------------------------------------+
| Ñ Ï Å Ö È À Ë Ü Í À ß Ô Ó Í Ê Ö È ß Î Á Ð À Á Î Ò Ê È Ñ Î Á Û Ò È É |
+-------------------------------------------------------------------------------------------------------------------*/
void OnTick()
{
// код доступен только после оплаты
}
/*-------------------------------------------------------------------------------------------------------------------+
| Ï Î Ë Ü Ç Î Â À Ò Å Ë Ü Ñ Ê È Å Ô Ó Í Ê Ö È È |
+-------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------------------------------------------------------------------------------------------+
| Ôóíêöèè îãðàíè÷åíèÿ òîðãîâëè |
+-------------------------------------------------------------------------------------------------------------------*/
int fRestrictTradebyLosses(string type)
{
if(type=="BUY")
if((TimeCurrent()-last_buy_close)/60>Restrict_TimeLimit || last_buy_profit>0)
return(OP_BUY);
if(type=="SELL")
if((TimeCurrent()-last_sell_close)/60>Restrict_TimeLimit || last_sell_profit>0)
return(OP_SELL);
return(-1);
}
int fRestrictTradebyVolatility(string type)
{
if(type=="BUY" && iOpen(NULL,PERIOD_Показано первые 50% кода (символов: 48443)
Что вы получите после оплаты
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? Адрес передаётся вместе с заказом в магазин и сохраняется для связи заказа с оплатой. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.