Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Здравствуйте, король Младен, сэр,
В этом файле мне нужна одна модификация, текущая свеча high/ low engulf предыдущая свеча open close bodies., один шаг текущего бара вы уже добавили, что показывает, что вы уже знаете, вы гений, все знают.
с уважением
Здравствуйте, Младен. Не могли бы вы посмотреть на эту угрозу, потому что когда я вставляю ее в MT4 и запускаю снова, у меня нет файла ex. Это USC Murrey Math Oscillator V2
Пожалуйста, приложите точный файл, который вы используете, чтобы кто-нибудь мог взглянуть на него.
Здравствуйте, король Младен, сэр,
В этом файле мне нужна одна модификация, текущая свеча high/ low engulf предыдущей свечи open close bodies., один шаг текущего бара вы уже добавили, что показывает, что вы уже знаете, вы гений, все знают.
с уважениемМаксимум этой свечи не перекрыл максимумы предыдущих 3 баров (посмотрите на максимум этого бара и сравните его с максимумом 2 баров назад).
Также нельзя сравнивать яблоки и груши: если сравнивается open/close (тело), то используются не high и low текущего бара, а open/close (тело). Если вы используете high./low, то максимумы/минимумы сравниваемых баров тоже используются.
Текст Pivot Point Confluence
Я нашел хороший индикатор MT4 Pivot Point Confluence, но он не показывает текстовые метки и цифры, как на изображении ниже. Он только рисует линии, но мне также нравится видеть текст и цифры.
Здравствуйте, Младен. Не могли бы вы посмотреть на эту угрозу, потому что когда я вставляю ее в MT4 и запускаю снова, у меня нет файла ex. Это USC Murrey Math Oscillator V2.
keansajeweki
Это код TradingView (не код metatrader).
Кто-то разместил его как mq4, но это не имеет никакого отношения к метатрейдеру.
может ли какой-нибудь добрый человек исправить это для работы на 6-значном брокере?
//+------------------------------------------------------------------+
//| 70/50VolBreakout.mq4 |
//| Keris2112 |
//| |
//+------------------------------------------------------------------+
#property copyright "Keris2112"
#property link ""
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 DodgerBlue
#property indicator_color2 Red
#property indicator_color3 Sienna
#property indicator_color4 Lime
#property indicator_width1 5
#property indicator_width2 3
#property indicator_width3 5
#property indicator_width4 3
extern int EntryPercent = 70;
extern int StopPercent = 50;
int i=1, shift;
double PrevRange;
double LongEntry;
double LongStop;
double ShortEntry;
double ShortStop;
bool result;
//---- буферы
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
bool isNewDay(int _shift)
{
//----
result=false;
if ( (TimeHour(Time[_shift])==0) && (TimeMinute(Time[_shift])==0) ) result=true;
//----
return(result);
}
void GetRS1ofDay(int _shift)
{
int prevDay=TimeDay(Time[_shift+1]);
//----
i=1;
while (TimeDay(Time[_shift+i])==prevDay) i++;
i--;
PrevRange=High - Low[Lowest(NULL,0,MODE_LOW,i,_shift+1)];
LongEntry = Open[_shift] + (PrevRange * (EntryPercent*0.01));
LongStop = LongEntry - (PrevRange * (StopPercent*0.01));
ShortEntry = Open[_shift] - (PrevRange * (EntryPercent*0.01));
ShortStop = ShortEntry + (PrevRange * (StopPercent*0.01));
ExtMapBuffer1[_shift] = LongEntry;
ExtMapBuffer2[_shift] = LongStop;
ExtMapBuffer3[_shift] = ShortEntry;
ExtMapBuffer4[_shift] = ShortStop;
Comment(
"Предыдущий диапазон: ",PrevRange*1/Point, "pips",
"\n",(EntryPercent),"% от предыдущего диапазона: ",MathRound((EntryPercent*PrevRange*(0.01/Point))), "пунктов",
"\n",(StopPercent),"% от предыдущего диапазона: ",MathRound((StopPercent*PrevRange*(0.01/Point))), "pips",
"\nOpen: ",Open[_shift],
"\nEnter BuyStop at: ",ExtMapBuffer1[_shift], "со StopLoss на: ",ExtMapBuffer2[_shift],
"\nEnter SellStop at: ",ExtMapBuffer3[_shift], "со StopLoss на: ",ExtMapBuffer4[_shift]);
}
void CopyLevels1Day(int _shift)
{
ExtMapBuffer1[_shift]=ExtMapBuffer1[_shift+1];
ExtMapBuffer2[_shift]=ExtMapBuffer2[_shift+1];
ExtMapBuffer3[_shift]=ExtMapBuffer3[_shift+1];
ExtMapBuffer4[_shift]=ExtMapBuffer4[_shift+1];
ExtMapBuffer5[_shift]=ExtMapBuffer5[_shift];
}
//+------------------------------------------------------------------+
//| Пользовательская функция инициализации индикатора |
//+------------------------------------------------------------------+
int init()
{
//---- индикаторы
IndicatorBuffers(4);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,160);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
SetIndexLabel(0,0);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,160);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
SetIndexLabel(1,0);
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2,160);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexEmptyValue(2,0.0);
SetIndexLabel(2,0);
SetIndexStyle(3,DRAW_ARROW);
SetIndexArrow(3,160);
SetIndexBuffer(3,ExtMapBuffer4);
SetIndexEmptyValue(3,0.0);
SetIndexLabel(3,0);
SetIndexBuffer(0,ExtMapBuffer5);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Функция деинициализации индикатора Custor |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
int limit,firstDay;
int counted_bars=IndicatorCounted();
if (counted_bars<0) return(0);
if (counted_bars==0)
{
limit=Bars-1;
i=1;
firstDay=TimeDay(Time[limit]);
while (TimeDay(Time[limit-i])==firstDay) i++;
limit=limit-i-PERIOD_D1/Period();
}
if (counted_bars>0) limit=Bars-counted_bars;
//----
if (Period()>PERIOD_D1) return;
for (shift=limit;shift>=0;shift--)
{
if (isNewDay(shift)) GetRS1ofDay(shift); else CopyLevels1Day(shift);
}
//----
return(0);
}
//+------------------------------------------------------------------+
Здравствуйте Младен - как всегда спасибо за ваш ответ - входит ли в ваши навыки создание такого индикатора? Заранее спасибо еще раз.
Насколько я искал, такого индикатора не существует.
может ли кто-нибудь из добрых людей исправить это, чтобы это работало на 6-значном брокере?
//+------------------------------------------------------------------+
//| 70/50VolBreakout.mq4 |
//| Keris2112 |
//| |
//+------------------------------------------------------------------+
#property copyright "Keris2112"
#property link ""
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 DodgerBlue
#property indicator_color2 Red
#property indicator_color3 Sienna
#property indicator_color4 Lime
#property indicator_width1 5
#property indicator_width2 3
#property indicator_width3 5
#property indicator_width4 3
extern int EntryPercent = 70;
extern int StopPercent = 50;
int i=1, shift;
double PrevRange;
double LongEntry;
double LongStop;
double ShortEntry;
double ShortStop;
bool result;
//---- буферы
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
double ExtMapBuffer5[];
bool isNewDay(int _shift)
{
//----
result=false;
if ( (TimeHour(Time[_shift])==0) && (TimeMinute(Time[_shift])==0) ) result=true;
//----
return(result);
}
void GetRS1ofDay(int _shift)
{
int prevDay=TimeDay(Time[_shift+1]);
//----
i=1;
while (TimeDay(Time[_shift+i])==prevDay) i++;
i--;
PrevRange=High - Low[Lowest(NULL,0,MODE_LOW,i,_shift+1)];
LongEntry = Open[_shift] + (PrevRange * (EntryPercent*0.01));
LongStop = LongEntry - (PrevRange * (StopPercent*0.01));
ShortEntry = Open[_shift] - (PrevRange * (EntryPercent*0.01));
ShortStop = ShortEntry + (PrevRange * (StopPercent*0.01));
ExtMapBuffer1[_shift] = LongEntry;
ExtMapBuffer2[_shift] = LongStop;
ExtMapBuffer3[_shift] = ShortEntry;
ExtMapBuffer4[_shift] = ShortStop;
Comment(
"Предыдущий диапазон: ",PrevRange*1/Point, "pips",
"\n",(EntryPercent),"% от предыдущего диапазона: ",MathRound((EntryPercent*PrevRange*(0.01/Point))), "пунктов",
"\n",(StopPercent),"% от предыдущего диапазона: ",MathRound((StopPercent*PrevRange*(0.01/Point))), "pips",
"\nOpen: ",Open[_shift],
"\nEnter BuyStop at: ",ExtMapBuffer1[_shift], "со StopLoss на: ",ExtMapBuffer2[_shift],
"\nEnter SellStop at: ",ExtMapBuffer3[_shift], "со StopLoss на: ",ExtMapBuffer4[_shift]);
}
void CopyLevels1Day(int _shift)
{
ExtMapBuffer1[_shift]=ExtMapBuffer1[_shift+1];
ExtMapBuffer2[_shift]=ExtMapBuffer2[_shift+1];
ExtMapBuffer3[_shift]=ExtMapBuffer3[_shift+1];
ExtMapBuffer4[_shift]=ExtMapBuffer4[_shift+1];
ExtMapBuffer5[_shift]=ExtMapBuffer5[_shift];
}
//+------------------------------------------------------------------+
//| Пользовательская функция инициализации индикатора |
//+------------------------------------------------------------------+
int init()
{
//---- индикаторы
IndicatorBuffers(4);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,160);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
SetIndexLabel(0,0);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,160);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
SetIndexLabel(1,0);
SetIndexStyle(2,DRAW_ARROW);
SetIndexArrow(2,160);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexEmptyValue(2,0.0);
SetIndexLabel(2,0);
SetIndexStyle(3,DRAW_ARROW);
SetIndexArrow(3,160);
SetIndexBuffer(3,ExtMapBuffer4);
SetIndexEmptyValue(3,0.0);
SetIndexLabel(3,0);
SetIndexBuffer(0,ExtMapBuffer5);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Функция деинициализации индикатора Custor |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Пользовательская функция итерации индикатора |
//+------------------------------------------------------------------+
int start()
{
int limit,firstDay;
int counted_bars=IndicatorCounted();
if (counted_bars<0) return(0);
if (counted_bars==0)
{
limit=Bars-1;
i=1;
firstDay=TimeDay(Time[limit]);
while (TimeDay(Time[limit-i])==firstDay) i++;
limit=limit-i-PERIOD_D1/Period();
}
if (counted_bars>0) limit=Bars-counted_bars;
//----
if (Period()>PERIOD_D1) return;
for (shift=limit;shift>=0;shift--)
{
if (isNewDay(shift)) GetRS1ofDay(shift); else CopyLevels1Day(shift);
}
//----
return(0);
}
//+------------------------------------------------------------------+Кажется, работает
С какой проблемой вы сталкиваетесь?
Здравствуйте, сэр,
Когда мы сравниваем уравнение, т.е. минимум или максимум предыдущей свечи, больше или меньше предыдущей свечи, метатрейдер не позволяет это сделать?
В паттерне Belthold используется эта формула, в этом c >h1.
Правда ли, что мы не можем сравнивать high low с телами open close? Я думаю, что во многих случаях, во многих свечных паттернах формула high low сравнивается с телами свечей.
с уважением,
Я нашел хороший индикатор MT4 Pivot Point Confluence, но он не показывает текстовые метки и числа, как на картинке ниже. Он только рисует линии, но мне также нравится видеть текст и цифры.
Я не знаю, какая версия была использована для такого отображения, но в старой версии метатрейдера он тоже так не отображается (я также пробовал его в билде 432, и он отображается точно так же, как и в новых билдах).