4_trendline_v3.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «4_trendline_v3.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, который отрисовывает на графике четыре трендовые линии (OBJ_TREND), привязанные к заданным временным интервалам. Индикатор работает на таймфрейме M15, сравнивая время каждого бара с настраиваемыми временными метками начала и окончания для каждой из четырёх линий.
Каждая трендовая линия имеет собственный цвет и может отображаться как сплошной или пунктирной линией. Параметр ApplyToOpen определяет, будет ли для построения линии использоваться цена открытия или цена закрытия бара. Временные значения задаются в виде строк с указанием am/pm и корректируются с учётом разницы между серверным и локальным временем.
Индикатор автоматически удаляет и пересоздаёт объекты линий при каждом обновлении. При несоответствии серверного и локального времени, а также при работе в пятницу после заданного часа закрытия, выводятся предупреждения через функцию Alert.
Настройки программы
| Настройка | Описание |
|---|---|
| ApplyToOpen | ApplyToOpen — Переключатель выбора цены для построения концов трендовых линий. При значении true используются цены открытия баров, при false — цены закрытия. |
| Friday_Close_Hour | Friday_Close_Hour — Строковое значение часа закрытия в пятницу (формат с указанием am/pm), используемое для корректировки временной разницы серверного и локального времени. |
| 2:45pm(PST) 5:45pm(EST) (TL_1_StartTime) | TL_1_StartTime — Время начала первой трендовой линии в строковом формате с указанием am/pm (например, 2:45pm). |
| 9:15pm(PST) 12:15am(EST) (TL_1_EndTime) | TL_1_EndTime — Время окончания первой трендовой линии в строковом формате с указанием am/pm (например, 9:15pm). |
| 2:45pm(PST) 5:45pm(EST) (TL_2_StartTime) | TL_2_StartTime — Время начала второй трендовой линии в строковом формате с указанием am/pm (например, 2:45pm). |
| 11:45pm(PST) 2:45am(EST) (TL_2_EndTime) | TL_2_EndTime — Время окончания второй трендовой линии в строковом формате с указанием am/pm (например, 11:45pm). |
| 12:15am(PST) 3:15am(EST) (TL_3_StartTime) | TL_3_StartTime — Время начала третьей трендовой линии в строковом формате с указанием am/pm (например, 12:15am). |
| 5:15am(PST) 8:15am(EST) (TL_3_EndTime) | TL_3_EndTime — Время окончания третьей трендовой линии в строковом формате с указанием am/pm (например, 5:15am). |
| 5:15am(PST) 8:15am(EST) (TL_4_StartTime) | TL_4_StartTime — Время начала четвёртой трендовой линии в строковом формате с указанием am/pm (например, 5:15am). |
| 11:15am(PST) 2:15pm(EST) (TL_4_EndTime) | TL_4_EndTime — Время окончания четвёртой трендовой линии в строковом формате с указанием am/pm (например, 11:15am). |
| FirstColor | FirstColor — Цвет первой трендовой линии на графике. |
| SecondColor | SecondColor — Цвет второй трендовой линии на графике. |
| ThirdColor | ThirdColor — Цвет третьей трендовой линии на графике. |
| FourthColor | FourthColor — Цвет четвёртой трендовой линии на графике. |
Поиск по коду файла
extern int Server_Local_TimeDiff = 10;
extern bool ApplyToOpen = false;
extern string Friday_Close_Hour = "1pm";
extern string TL_1_StartTime = "2:45pm"; //2:45pm(PST) 5:45pm(EST)
extern string TL_1_EndTime = "9:15pm"; //9:15pm(PST) 12:15am(EST)
extern string TL_2_StartTime = "2:45pm"; //2:45pm(PST) 5:45pm(EST)
extern string TL_2_EndTime = "11:45pm"; //11:45pm(PST) 2:45am(EST)
extern string TL_3_StartTime = "12:15am"; //12:15am(PST) 3:15am(EST)
extern string TL_3_EndTime = "5:15am"; //5:15am(PST) 8:15am(EST)
extern string TL_4_StartTime = "5:15am"; //5:15am(PST) 8:15am(EST)
extern string TL_4_EndTime = "11:15am"; //11:15am(PST) 2:15pm(EST)
extern color FirstColor = DodgerBlue;
extern color SecondColor = Goldenrod;
extern color ThirdColor = Salmon;
extern color FourthColor = Violet;
int FridayCloseHour=23, vHour=0;
double timeDiff=10;
bool alertFlag=false, alertFlag2=false;
string TL1StartTime, TL1EndTime, TL2StartTime, TL2EndTime;
string TL3StartTime, TL3EndTime, TL4StartTime, TL4EndTime;
string test, test2, barTime;
int TL_1_TradeDay=1;
#property indicator_chart_window
int init()
{
// код доступен только после оплаты
}
int deinit()
{
ObjectDelete("TL_1");
ObjectDelete("TL_1_2");
ObjectDelete("TL_2");
ObjectDelete("TL_2_2");
ObjectDelete("TL_3");
ObjectDelete("TL_3_2");
ObjectDelete("TL_4");
ObjectDelete("TL_4_2");
return(0);
}
int start()
{
// код доступен только после оплаты
}
void calcTimes(){
int strlen=0;
string substr, substr2, substr3;
string substr100, substr200;
if (CurTime() > LocalTime()) {timeDiff = CurTime() - LocalTime();}
else timeDiff = LocalTime() - CurTime(); // if (alertFlag==false) {Alert("Error!!!", "Server Time<Local Time",
timeDiff=MathRound(timeDiff/3600);
if (DayOfWeek()==5 && Hour()>=FridayCloseHour) timeDiff=Server_Local_TimeDiff;
else
if (timeDiff != Server_Local_TimeDiff) {
if (alertFlag==false) {Alert("Error!!!", " Server_Local_TimeDiff Do not match!",
"\n","If Server is active.","\n",
"You need to change Server_Local_TimeDiff!","\n",
"Or you may have to change the Friday_Close_Hour."); alertFlag=true;}}
strlen=StringLen(TL_1_StartTime);
if (strlen==6) {
substr=StringSubstr(TL_1_StartTime, 0, 1);
substr2=StringSubstr(TL_1_StartTime, 2, 2);
substr3=StringSubstr(TL_1_StartTime, 4, 2);
if (substr3=="am" && substr!="12") {vHour=StrToInteger(substr)+timeDiff; if (vHouПоказано первые 50% кода (символов: 17624)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.