
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
сходите на форум поля. там вам все расскажут про свечи со всеми стат. выкладками.
EURUSD H4
По моему - там все правильно
И эксперта по ним тоже написал. Но никогд ане стоит забывать, что это как котировки Reuters - индикативно! Во первых, сами свечи создавались для товарных рынком, где минимумом был ДЕНЬ торговли, когда почти гарантированно появляется какой никакой разрыв. В нашем же случае всё очень и очень субьективно, посему отарбатывается всё почти что на интуиции, а подобные эксперты выдают ну уж самые явные сигналы (не забывайте, к стати, адаптировать свечной анализ применительно к Форексу, там много разных допусков...).
да действительно, даже не вникая в код поместил индикатор на чарт (GBPUSD D1) и наблюдаю 31/03/2003 что одна и та же свеча идет как молот и вечерняя звезда (противоположные сигналы), позже на следующей недели если ничего не найдешь попробую перевести твой код
В книге под редакцией Сафина "Кому светят японские свечи?", изданной Форекс Клубом - есть пример, как они интерпретируют их комбинации (кажется двоичным кодом). Я не программист, но кажется это может помочь для расширения количества патернов свечей включаемых в индикатор.
Вообще полностью согласен с Hell - самому держать в голове, а главное сравнивать комбинации для определения того или иного вида - весьма утомительно. Индикатор - хорошее подспорье.
Другое дело - насколько он эффкутивно будет показывать, так на том же Fibo есть программа DealSmart в которую включен такой индикатор, но во первых колличество анализируемых паттернов слишком мало, как раз те, котрые и без них в голове сидят. Да и порой врет безбожно.
Если же дело до такой работы дойдет, то могу поискать описание различных паттернов свечей, в свое время собирал из различных источноиков.
А за индикатор для MT4 мноuие скажут спасибо.
_______________________________________________________________
/*[[
Name := Bheurekso_pattern
Author := Bheurekso, correction - Divergence & lot
Link := http://www.darmasdt.com
Notes := Pattern Recognizer
Separate Window := No
First Color := Lime
First Draw Type := Symbol
First Symbol := 108
Use Second Data := Yes
Second Color := Red
Second Draw Type := Symbol
Second Symbol := 108
]]*/
Input : Prevbars(500), Arrow(1), Name(1);
Variable : myBars(0), StartBar(0), Kedip(false);
Variable : shift(0), shift1(0), shift2(0), shift3(0);
Variable : BullEngulf(False), MorningStar(False), BullPierce(False), Hammer(False);
Variable : BearEngulf(False), EveningStar(False), DarkCloud(False), Shooter(False);
Variable : Harami(False);
SetLoopCount(0);
if (myBars!=Bars) then { myBars=Bars; StartBar=Prevbars;
DelObject("",0,0,0,0);
DelArrow(0,0); };
StartBar += 1;
For shift=StartBar Downto 0 {
// Manjakan MT
shift1=shift+1;
shift2=shift+2;
shift3=shift+3;
//*** periksa pola bullish***
//***************************
//--- Bullish Engulfing (2 bars)
if c[shift2] < o[shift2] & o[shift1] < c[shift2] & //| l[shift1] < l[shift2]) &
c[shift1] > o[shift2] then BullEngulf=True else BullEngulf=False;
//--- Bullish Piercing (2 bars) cuma cari kalo ga ada BullEngulf
if !BullEngulf then {
if c[shift2] < o[shift2] & c[shift1] > o[shift1] & (o[shift1] < c[shift2] | l[shift1] < l[shift2]) &
c[shift1] > c[shift2]+((o[shift2]-c[shift2])/2) then BullPierce=True else BullPierce=False;
}
else {
BullPierce=False;
};
// Morning Star (3 bars)
if c[shift3] < o[shift3] & o[shift2] < c[shift3] & c[shift2] < c[shift3] &
(o[shift1] > c[shift2] | h[shift1] > h[shift2]) & c[shift1] >= c[shift3] then MorningStar=True else MorningStar=False;
// Hammer
if c[shift1] > o[shift1] & (o[shift1]-l[shift1] > max( h[shift1]-c[shift1],c[shift1]-o[shift1])*3 ) then Hammer=True else Hammer=False;
//*** periksa pola bearish***
//***************************
//--- Bearish Engulfing (2 bars)
if c[shift2] > o[shift2] & c[shift1] < o[shift1] & o[shift1] > c[shift2] &
(c[shift1] < o[shift2] | l[shift1] < l[shift2]) then BearEngulf=True else BearEngulf=False;
//--- Bearish Dark Cloud (2 bars) cuma cari kalo ga ada BearEngulf
if !BearEngulf then {
if c[shift2] > o[shift2] & (o[shift1] > c[shift2] | h[shift1] > h[shift2]) &
c[shift1] < c[shift2]-((c[shift2]-o[shift2])/2) then DarkCloud=True else DarkCloud=False;
}
else {
DarkCloud=False;
};
// Evening Star (3 bars)
if c[shift3] > o[shift3] & o[shift2] > c[shift3] & c[shift2] > c[shift3] &
(o[shift1] < c[shift2] | l[shift1] < l[shift2]) & c[shift1] < c[shift3] then EveningStar=True else EveningStar=False;
// Shooting Star
if c[shift1] < o[shift1] & (h[shift1]-o[shift1] > max( c[shift1]-l[shift1],o[shift1]-c[shift1])*3 ) then Shooter=True else Shooter=False;
// Kasih keterangan dan panah Bullish di chart
if BullEngulf then {
if Name=1 then SetText(t[shift1],l[shift1]-28*Point,"Engulfing",LIME);
if Arrow=1 then SetArrow(t[shift1],l[shift1]-20*Point,241,LIME);
}
else {
if BullPierce then {
if Name=1 then SetText(t[shift1],l[shift1]-23*Point,"Piercing",WHITE);
if Arrow=1 then SetArrow(t[shift1],l[shift1]-15*Point,241,LIME);
};
};
if MorningStar then {
if Name=1 then SetText(t[shift2],l[shift2]-18*Point,"Morning Star",Magenta);
if Arrow=1 then SetArrow(t[shift2],l[shift2]-10*Point,241,LIME);
};
if Hammer then {
if Name=1 then SetText(t[shift1],l[shift1]-13*Point,"Hammer",LIME);
if Arrow=1 then SetArrow(t[shift1],l[shift1]-5*Point,241,LIME);
};
// Kasih keterangan dan panah Bearish di chart
if BearEngulf then {
if Name=1 then SetText(t[shift1],h[shift1]+28*Point,"Engulfing",ORANGERED);
if Arrow=1 then SetArrow(t[shift1],h[shift1]+20*Point,242,ORANGERED);
}
else {
if DarkCloud then {
if Name=1 then SetText(t[shift1],h[shift1]+23*Point,"Dark Cloud",WHITE);
if Arrow=1 then SetArrow(t[shift1],h[shift1]+15*Point,242,ORANGERED);
};
};
if EveningStar then {
if Name=1 then SetText(t[shift2],h[shift2]+18*Point,"Evening Star",Magenta);
if Arrow=1 then SetArrow(t[shift2],h[shift2]+10*Point,242,ORANGERED);
};
if Shooter then {
if Name=1 then SetText(t[shift1],h[shift1]+13*Point,"Shooting",ORANGERED);
if Arrow=1 then SetArrow(t[shift1],h[shift1]+5*Point,242,ORANGERED);
};
// Tampilkan disaat ada konfirmasi.
If (BullEngulf | BullPierce | MorningStar | Hammer) &
c[shift] > o[shift] then SetIndexValue(shift, l[shift]-7*Point) else SetIndexValue2(shift,0);
If (BearEngulf | DarkCloud | EveningStar | Shooter) &
c[shift] < o[shift] then SetIndexValue2(shift, h[shift]+7*Point) else SetIndexValue2(shift,0);
StartBar-=1;
};
_______________________________
Больно муторно вспоминать MQL2 и разбираться с чужой логикой, проще построить все с нуля. Для этого нужно уточнить некоторые моменты. (аська 321-144-937)
В основе всех свечных конфигураций лежат "обычные", "с маленьким телом", "дожи" свечи, их идентифицирует каждый по-своему. Во избежание неоднозначной идентификации свечи (в индикаторе) нужно определиться сначала что в индикаторе мы будем считать обычной свечой, что с малым телом, и что дожей. Предлагаю не использовать абсолютные величины, а взять % отношение тела и теней к амплитуде, причем амплитуду брать среднюю за n последних периодов. Так устроит? Если да, то следующее предложение (во внешних параметрах)
"дожа" - это свеча у которой амплитуда составляет менее 50% от средней амплитуды + тело составляет менее 20% от ее амплитуды или тело составляет менее 10% от амплитуды,
"с маленким телом (звезды)" - это свеча с амплитудой от 50 до 65% (во внешние параметры только второе значение)
все остальные обычные свечи,
так устроит?
Вот тупой перевод в МТ4, вроде с логикой все в порядке, а вот что оно должно рисовать проверить не могу.