قديم 05-01-2013, 07:57 PM
  المشاركه #1

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

_SECTION_BEGIN("ZeroLag MACD");
/*Xero Lag MACD(p,q,r)*/
//based on ZeroLag EMA - see Technical Analysis of Stocks and Commodities, April 2000
p = Param("P",12,3,36,2);
q = Param("Q",26,3,52,2);
r = Param("R",9,3,15,1);

EMA1= EMA(Close,p);
EMA2= EMA(EMA1,p);
Difference= EMA1 - EMA2;
ZeroLagEMAp= EMA1 + Difference;
//---------------------------------------
EMA1= EMA(Close,q);
EMA2= EMA(EMA1,q);
Difference= EMA1 - EMA2;
ZeroLagEMAq= EMA1 + Difference;
//---------------------------------------
ZeroLagMACD=ZeroLagEMAp - ZeroLagEMAq;
//---------------------------------------
// Signal line
EMA1= EMA(ZeroLagMACD,r);
EMA2= EMA(EMA1,r);
Difference= EMA1 - EMA2;
ZeroLagTRIG= EMA1 + Difference;
em_macd = EMA(zerolagMACD,5);

Plot(em_MACD,"ema",IIf(em_MACD > Ref(em_MACD,-1),colorBrightGreen,colorRed),styleThick);
Plot(zerolagMACD,"zmacd",IIf(zerolagMACD > Ref(zerolagMACD,-1),colorBrightGreen,colorRed),styleThick+styleDots);
//diff_1 = ZeroLagMACD - em_macd;
//Plot(diff_1,"hist",IIf(diff_1 > 0, colorBrightGreen, colorRed),styleHistogram);
//Plot(diff_1,"hist",IIf(diff_1 > Ref(diff_1,-1), colorBrightGreen, colorRed),styleLine);

Plot(zerolagtrig,"",IIf(zerolagtrig > Ref(zerolagtrig,-1),colorAqua,colorBlue),styleDashed);

Plot(0,"",colorWhite,styleNoLabel);
a = round (zerolagMACD*100)/100;
a1 = Ref(a,-1);
diff1 = round((a - a1)*10)/10;
diff2 = round((a1 - Ref(a,-2))*10)/10;
ST33= ZeroLagMACD;
bars=50;
TR1= LLVBars(ST33,5);
COND1=TR1> 0 AND Ref(TR1,-1)==0 AND Ref(ST33,-1)<0;
TR2= IIf(COND1,Ref(ST33,-1),0);
M1= ValueWhen(COND1,ST33);
P1= ValueWhen(COND1,LLV(L,3));
DM1=M1- Ref(M1,-1);DP1=P1-Ref(P1,-1);
DT= Ref(BarsSince(COND1),-1);
POSDIV=DM1> 0 AND DP1<0 AND DT<BARS;
TR11= HHVBars(ST33,5);
COND11=TR11> 0 AND Ref(TR11,-1)==0 AND Ref(ST33,-1)>0;
TR21= IIf(COND11,Ref(ST33,-1),0);
M11= ValueWhen(COND11,ST33);
P11= ValueWhen(COND11,HHV(H,3));
DM11=M11- Ref(M11,-1);DP11=P11-Ref(P11,-1);
DT1= Ref(BarsSince(COND11),-1);
NEGDIV=DM11< 0 AND DP11>0 AND DT1<BARS;

Title =
EncodeColor(colorYellow)+"MACD : "+ WriteIf(a > 0, EncodeColor(colorGreen)+a,EncodeColor(colorRed)+a)
+ WriteIf(diff1 > 0, EncodeColor(colorGreen)+" Up by "+diff1,EncodeColor(colorRed)+" Dn by "+diff1)
+"\n"
+EncodeColor(colorYellow)+ "One bar ago : "+ WriteIf(a1 > 0, EncodeColor(colorGreen)+a1,EncodeColor(colorRed)+a1)
+ WriteIf(diff2 > 0, EncodeColor(colorGreen)+" Up by "+diff2,EncodeColor(colorRed)+" Dn by "+diff2)
;

_SECTION_END();



معادلات (amibroker ) للفائدة

الموضوع الأصلي : اضغط هنا    ||   المصدر : منتدى هوامير البورصة السعودية


رد مع اقتباس
 
 

قديم 05-01-2013, 07:58 PM
  المشاركه #2

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

معادلة أخرى بالمرفقات


رد: معادلات (amibroker ) للفائدة



الملفات المرفقة
نوع الملف: txt l[[[[.txt‏ (33.4 كيلوبايت, المشاهدات 200)
رد مع اقتباس
قديم 05-01-2013, 08:06 PM
  المشاركه #3

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

_SECTION_BEGIN("Chart Settings");
SetChartOptions(0,chartShowArrows|chartShowDates,chartGrid20 |chartGrid50 |chartGrid80);
SetChartBkColor(ParamColor("Outer Panel",colorPaleBlue));
SetChartBkGradientFill(ParamColor("Upper Chart",colorBlack),ParamColor("Lower Chart",colorBlack));
_SECTION_END();

Period=Param("Period",12,1,50,1);
PeriodT=Param("Tetik Period",1,1,15,1);


DIS=PDI(Period)-MDI(Period);
DISL=LinRegSlope(DIS,Period);
DISLMA=EMA(DISL,PeriodT);





Plot(DISL,"",colorRed,styleLine|styleThick);
Plot(DISLMA,"",colorAqua,styleDashed|styleThick);
Plot(0,"",colorAqua,styleLine+styleDots|styleThick);

Plot(C,"",colorWhite,styleBar|styleThick|styleOwnScale);


رد: معادلات (amibroker ) للفائدة



رد مع اقتباس
قديم 05-01-2013, 08:09 PM
  المشاركه #4

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

_SECTION_BEGIN("Unnamed 1031");






p = Param("P",12,3,36,1);
q = Param("Q",26,3,52,1);
r = Param("R",9,3,15,1);

EMA1= scGauss2ord(Close,p);
EMA2= scGauss2ord(EMA1,p);
Difference= EMA1 - EMA2;
ZeroLagEMAp= EMA1 + Difference;

EMA1= scGauss2ord(Close,q);
EMA2= scGauss2ord(EMA1,q);
Difference= EMA1 - EMA2;
ZeroLagEMAq= EMA1 + Difference;
ZeroLagMACD=ZeroLagEMAp - ZeroLagEMAq;

EMA1= scGauss2ord(ZeroLagMACD,r);
EMA2= scGauss2ord(EMA1,r);
Difference= EMA1 - EMA2;
ZeroLagTRIG= EMA1 + Difference;

Plot(zerolagMACD,"",5,4);
Plot(zerolagtrig,"",7,styleHistogram);
Plot(zerolagtrig,"",4,styleLine|styleThick);
Plot(0,"",3,4);
_SECTION_END();

رد: معادلات (amibroker ) للفائدة



رد مع اقتباس
قديم 05-01-2013, 08:13 PM
  المشاركه #5

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

Slw = 24; Pds = 12;
Slw = Param( "Slw", 24 );
Pds= Param( " Pds", 12 );
R = ((HHV(H,60) - C) /(HHV (H,60) -LLV (L,60))) *-100;
Period = 10;
EMA1 = EMA(R,Period);
EMA2 = EMA(EMA1,5);
se = EMA1 - EMA2;
ni = EMA1 + se;
PR = 0-abs(ni);
ra = MA(PR,5);

na = PR>=ra AND PR>=Ref(PR,-1) ;
tu = (PR < ra) OR PR>= ra AND PR< Ref(PR,-1) ;

barcolor = IIf( tu,colorRed, IIf( na, colorBrightGreen, 7));

Graph0BarColor = ValueWhen( barcolor != 0, barcolor );

A = EMA((Close-LLV(Low,Pds))/(HHV(H,pds)-LLV(L,Pds)),Slw)*100;


DSS = EMA((A-LLV(A,pds))/(HHV(A,Pds)-LLV(A,Pds)),Slw)*100;

MaxGraph = 10;
Graph0 = DSS; Graph0Color = 6; Graph2 = DSS;
Overbought = 80; Oversold = 20;

Graph2BarColor = IIf (Graph2 > overbought, 4,
IIf (Graph2 < oversold,5,6));
pds=10;
MAs = MA ( C,2);
MAf = MA ( C,2);
pds=MAf;
pds=MAs;
Sell = Cross( MAs, MAf );
Buy = Cross( MAf,MAs );
Short=Sell;
Cover=Buy;


Sell= Cross (DSS, A);
Buy = Cross (A,DSS);
Cover=Buy;
Short=Sell;
Buy=ExRem(Buy,Sell);
Sell=ExRem(Sell,Buy);

_SECTION_BEGIN("Title");

DODay = TimeFrameGetPrice("O", inDaily);
DHiDay = TimeFrameGetPrice("H", inDaily);
DLoDay = TimeFrameGetPrice("L", inDaily);
Title = EncodeColor(colorWhite)+" "+EncodeColor(colorWhite)+ Name() + ", " + Interval(2) + ", " + Date() +
EncodeColor(colorWhite) + "\nO " + EncodeColor(colorWhite) + O +

", H : " + H +
", L : " + L +
", C : " + C +
EncodeColor(colorWhite)+ "\n Day-Open : " +DODay + " Day-High : " +DHiDay + " Day-Low : " + DLoDay +
EncodeColor(colorLime)+
WriteIf (Buy , " GO LONG / Reverse Signal at "+C+" ","")+
WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ","")+"\n"+EncodeColor(colorYellow)+
WriteIf(Buy, "Total Profit/Loss for the Last Trade Rs."+(C-BuyPrice)+"","")+
WriteIf(Sell , "Total Profit/Loss for the Last trade Rs."+(SellPrice-C)+"","");





ob = 80; /*Overbought */
/*ob = Optimize("ob",83,65,88,1); */
os = 20; /*Oversold */
/*os = Optimize("os",24,20,50,1); */

Plot(Ob,"Overbought Level",colorRed, styleLine);
Plot(Os,"Oversold Level",colorGreen, styleLine);
Plot( Volume, _DEFAULT_NAME(), ParamColor("Color", colorLavender ), styleNoTitle | ParamStyle( "Style", styleHistogram | styleOwnScale | styleThick | styleNoLabel, maskHistogram ), 2 );

_SECTION_BEGIN("L.T.P.");
cx = Param( "cxposn", 0, 0, 1250, 1 );
cy = Param( "cyposn", 42, 0, 500, 1 );
GfxSelectFont( "Candara", 18, 98, False );
GfxSetBkColor( colorBlack );
GfxSetTextColor( colorWhite );
GfxTextOut( "L.T.P. " + C + " ", cx, cy );

AlertIf( Buy , "SOUND C:\\Windows\\Media\\chimes.wav", "Audio alert", 2 );
AlertIf( Sell , "SOUND C:\\Windows\\Media\\alert.wav", "Audio alert", 2 );
PlotShapes( Buy * shapeUpArrow + Sell * shapeDownArrow, IIf( Buy, colorBrightGreen, colorYellow ) );
BI = BarIndex();
SelectedBar = SelectedValue(BI) -BI[0];
//Selectedbar = Status("lastvisiblebar")-1;
PStr="";
for(Cp=0; Cp<=44; Cp++)
{
Temp = VarGet("Pattern"+NumToStr(Cp,1.0));
if(temp[SelectedBar]) Pstr=Pstr+"#"+NumToStr(Cp,1.0)+" - "+StrExtract(PatternNameList,Cp)+"\n";
}
FS=Param("Font Size",11,11,100,1);
GfxSelectFont("Times New Roman", FS, 700, True );
GfxSetBkMode( colorWhite );
GfxSetTextColor( ParamColor("Color",colorWhite) );
Hor=Param("Horizontal Position",237,1,1200,1);
Ver=Param("Vertical Position",50,1,830,1);


SetChartOptions( 1, chartShowDates );
BKswitch = ParamToggle("Background Color","On,Off");

OUTcolor = ParamColor("Outer Panel Color",colorTeal);
INUPcolor = ParamColor("Inner Panel Upper",colorBlue);
INDNcolor = ParamColor("Inner Panel Lower",colorBlack);
TitleColor = ParamColor("Title Color ",colorBlack);

if (NOT BKswitch)
{
SetChartBkColor(OUTcolor); // color of outer border
SetChartBkGradientFill(INUPcolor,INDNcolor,TitleColor); // color of inner panel
}


H1=SelectedValue( TimeFrameGetPrice( "H", inDaily, -1 ));
L1=SelectedValue(TimeFrameGetPrice( "L", inDaily, -1 ));
C1=SelectedValue(TimeFrameGetPrice( "C", inDaily, -1 ));

PP= (H1 + L1 + C1)/3;
High1=((((C1 + H1)/2)/3)*2) + (O /3) ;
Low1 = ((((C1 + L1)/2)/3)*2) + (O /3) ;

High2= High1 + (High1- Low1);
Low2 = Low1 - (High1- Low1);

Plot (PP,"Pivot",colorOrange,styleLine+styleNoRescale);
Plot (High1,"H1",colorRed,styleLine|styleNoRescale);
Plot (High2,"H2",colorRed,styleLine|styleNoRescale);

Plot (Low1,"L1",colorGreen,styleLine|styleNoRescale);
Plot (Low2,"L2",colorGreen,styleLine|styleNoRescale);

C13=Param("fonts",8,32,50,1 );
C14=Param("left-right",2.2,1.0,5.0,0.1 );
C15=Param("up-down",5,1,30,1 );
GfxSelectFont("Tahoma", Status("pxheight")/C13 );
GfxSetTextAlign( 6 );
GfxTextOut( "LTP "+WriteVal(C,1.2), Status("pxwidth")/C14, Status("pxheight")/C15);
GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );


رد: معادلات (amibroker ) للفائدة



رد مع اقتباس
قديم 05-01-2013, 08:15 PM
  المشاركه #6

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

/* HARMONIC PATTERN DETECTION


Automatic Detection of Harmonic Patterns - Gartley, Bat, Butterfly and Crab.
Zig Zag is not used in this AFL. It is based on fractals

Contact - (تم حذف الإيميل لأن عرضه مخالف لشروط المنتدى)

*/



_SECTION_BEGIN("Price");
SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", ParamColor("Color", colorBlack ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
_SECTION_END();

_SECTION_BEGIN("Gartley");

GBmin = Param("Swing B Min.",0.55,0.3,1,0.01);
GBmax = Param("Swing B Max.",0.72,0.4,1,0.01);
GCmin = Param("Swing C Min.",0.38,0.3,1.27,0.01);
GCmax = Param("Swing C Max.",1.0,0.4,1.27,0.01);
GDmin = Param("Swing D Min.(XA)",0.55,0.3,1,0.01);
GDmax = Param("Swing D Max.(XA)",1.0,0.4,1.0,0.01);

_SECTION_END();

_SECTION_BEGIN("Bat");

BatBmin = Param("Swing B Min.",0.38,0.3,1,0.01);
BatBmax = Param("Swing B Max.",0.55,0.4,1,0.01);
BatCmin = Param("Swing C Min.",0.38,0.3,1.62,0.01);
BatCmax = Param("Swing C Max.",1.27,0.4,1.62,0.01);
BatDmin = Param("Swing D Min.(XA)",0.5,0.3,1,0.01);
BatDmax = Param("Swing D Max.(XA)",1.0,0.4,1.0,0.01);

_SECTION_END();

_SECTION_BEGIN("Butterfly");
ToolTip=StrFormat("Open: %g\nHigh: %g\nLow: %g\nClose: %g (%.1f%%)\nVolume: "+NumToStr( V, 1 ), O, H, L, C, SelectedValue( ROC( C, 1 )));
BtBmin = Param("Swing B Min.",0.55,0.3,1,0.01);
BtBmax = Param("Swing B Max.",0.9,0.4,1,0.01);
BtCmin = Param("Swing C Min.",0.38,0.3,1.62,0.01);
BtCmax = Param("Swing C Max.",1.27,0.4,1.62,0.01);
BtDmin = Param("Swing D Min.(XA)",1,1,1.8,0.01);
BtDmax = Param("Swing D Max.(XA)",1.38,1,1.8,0.01);

_SECTION_END();

_SECTION_BEGIN("Crab");

CBmin = Param("Swing B Min.",0.38,0.3,1,0.01);
CBmax = Param("Swing B Max.",0.65,0.4,1,0.01);
CCmin = Param("Swing C Min.",0.38,0.3,1.62,0.01);
CCmax = Param("Swing C Max.",1.270,0.4,1.62,0.01);
CDmin = Param("Swing D Min.(XA)",1.25,1,1.8,0.01);
CDmax = Param("Swing D Max.(XA)",1.8,1,2,0.01);

_SECTION_END();

_SECTION_BEGIN("Patterns");

strength = Param("Strength",5,2,15,1);
bu = ParamToggle("Bullish Pattern","Off|On",1);
be = ParamToggle("Bearish Pattern","Off|On",1);

bi = Cum(1)-1;

function GetTop(bars)
{
Top = H == HHV(H,2*bars) AND Ref(HHV(H,bars),bars) < H;
Top = Top AND LastValue(bi)-ValueWhen(Top,bi) > bars;
return Top;
}

function GetValley(bars)
{
Valley = L == LLV(L,2*bars) AND Ref(LLV(L,bars),bars) > L;
Valley = Valley AND LastValue(bi)-ValueWhen(Valley,bi) > bars;
return Valley;
}


// Build fractals array

P1 = GetTop(strength);
V1 = GetValley(Strength);

P1 = IIf(P1,IIf(ValueWhen(P1,bi,2) < ValueWhen(V1,bi),P1,IIf(ValueWhen(P1,H,2) > H,False,P1)),P1);
//P1 = IIf(P1 AND ValueWhen(P1,bi,0) > bi,IIf(ValueWhen(P1,bi,0) < ValueWhen(V1,bi,0),IIf(ValueWhen(P1,H,0) >= H,False,P1),P1),P1);
P1 = IIf(P1 AND ValueWhen(P1,bi,0) > bi AND NOT(ValueWhen(V1,bi,0) > 0 AND ValueWhen(V1,bi,0)<ValueWhen(P1,bi,0)),IIf(ValueWhen(P1,H)<=ValueWhen(P1,H,0), False,P1),P1);


V1 = IIf(V1,IIf(ValueWhen(V1,bi,2) < ValueWhen(P1,bi),V1,IIf(ValueWhen(V1,L,2)<L,False,V1)),V1);
//V1 = IIf(V1 AND ValueWhen(V1,bi,0) > bi ,IIf(ValueWhen(V1,bi,0) < ValueWhen(P1,bi,0),IIf(ValueWhen(V1,L,0) <= L, False,V1),V1),V1);
V1 = IIf(V1 AND ValueWhen(V1,bi,0) > bi AND NOT(ValueWhen(P1,bi,0) > bi AND ValueWhen(P1,bi,0)<ValueWhen(V1,bi,0)) , IIf(ValueWhen(V1,L)>=ValueWhen(V1,L,0),False,V1),V1);


P1H1 = ValueWhen(P1,H);
P1Bar1 = ValueWhen(P1,bi);
P1H2 = ValueWhen(P1,H,2);
P1Bar2 = ValueWhen(P1,bi,2);
V1L1 = ValueWhen(V1,L);
V1Bar1 = ValueWhen(V1,bi);
V1L2 = ValueWhen(V1,L,2);
V1Bar2 = ValueWhen(V1,bi,2);


//Bullish Patterns

PTvalid = (P1Bar1 > V1Bar1 AND V1Bar1 > P1Bar2 AND P1bar2 > V1Bar2) AND P1; // Peaks and troughs are in order

// 4 swings of developing Gartley/Bat etc.

BullGartley4 = PTvalid AND (P1H2-V1L1)/(P1H2-V1L2) > GBmin AND (P1H2-V1L1)/(P1H2-V1L2) < GBmax
AND (P1H1-V1L1)/(P1H2-V1L1) > GCMin AND (P1H1-V1L1)/(P1H2-V1L1) < GCMax;

BullBat4 = PTvalid AND (P1H2-V1L1)/(P1H2-V1L2) > BatBmin AND (P1H2-V1L1)/(P1H2-V1L2) < BatBmax
AND (P1H1-V1L1)/(P1H2-V1L1) > BatCMin AND (P1H1-V1L1)/(P1H2-V1L1) < BatCMax;

BullButterfly4 = PTvalid AND (P1H2-V1L1)/(P1H2-V1L2) > BtBmin AND (P1H2-V1L1)/(P1H2-V1L2) < BtBMax
AND (P1H1-V1L1)/(P1H2-V1L1) > BtCmin AND (P1H1-V1L1)/(P1H2-V1L1) < BtCmax;

BullCrab4 = PTvalid AND (P1H2-V1L1)/(P1H2-V1L2) >CBmin AND (P1H2-V1L1)/(P1H2-V1L2) < CBmax
AND (P1H1-V1L1)/(P1H2-V1L1) > CCmin AND (P1H1-V1L1)/(P1H2-V1L1) < CCmax;


// Bullish Gartley/Bat found. D retacement level is not evaluated

BullGartley = IIf(LowestSince(BullGartley4,L) < ValueWhen(BullGartley4,P1H2)-(ValueWhen(BullGartley4,P1H2)-ValueWhen(BullGartley4,V1L2))*GDmin AND
LowestSince(bullGartley4,L) > ValueWhen(BullGartley4,P1H2)-(ValueWhen(BullGartley4,P1H2)-ValueWhen(BullGartley4,V1L2))*GDmax AND
HighestSince(BullGartley4,H) <= ValueWhen(BullGartley4,P1H1 ) AND
LowestSince(bullGartley4,L)==L, True,False);
BullGartley = BullGartley AND LowestSince(BullGartley4,L) < ValueWhen(BullGartley4,V1L1);

BullBat = IIf(LowestSince(BullBat4,L) < ValueWhen(BullBat4,P1H2)-(ValueWhen(BullBat4,P1H2)-ValueWhen(BullBat4,V1L2))*BatDmin AND
LowestSince(BullBat4,L) > ValueWhen(BullBat4,P1H2)-(ValueWhen(BullBat4,P1H2)-ValueWhen(BullBat4,V1L2))*BatDmax AND
HighestSince(BullBat4,H) <= ValueWhen(BullBat4,P1H1 ) AND
LowestSince(BullBat4,L)==L, True,False);
BullBat = BullBat AND LowestSince(BullCrab4,L) < ValueWhen(BullCrab4,V1L1);


BullCrab = IIf(LowestSince(BullCrab4,L) < ValueWhen(BullCrab4,P1H2)-(ValueWhen(BullCrab4,P1H2)-ValueWhen(BullCrab4,V1L2))*CDmin AND
LowestSince(BullCrab4,L) > ValueWhen(BullCrab4,P1H2)-(ValueWhen(BullCrab4,P1H2)-ValueWhen(BullCrab4,V1L2))*CDmax AND
HighestSince(BullCrab4,H) <= ValueWhen(BullCrab4,P1H1 ) AND
LowestSince(bullGartley4,L)==L, True,False);
BullCrab = BullCrab AND LowestSince(BullCrab4,L) < ValueWhen(BullCrab4,V1L2);


BullButterfly = IIf(LowestSince(BullButterfly4,L) < ValueWhen(BullButterfly4,P1H2)-(ValueWhen(BullButterfly4,P1H2)-ValueWhen(BullButterfly4,V1L2))*BtDMin AND
LowestSince(BullButterfly4,L) > ValueWhen(BullButterfly4,P1H2)-(ValueWhen(BullButterfly4,P1H2)-ValueWhen(BullButterfly4,V1L2))*BtDmax AND
HighestSince(BullButterfly4,H) <= ValueWhen(BullButterfly4,P1H1 ) AND
LowestSince(bullButterfly4,L)==L, True,False);
BullButterfly = BullButterfly AND LowestSince(BullButterfly4,L) < ValueWhen(BullButterfly4,V1L2);



// to remove redumbdent lines

BullHar4 = BullGartley4 OR BullButterfly4 OR BullBat4 OR BullCrab4 ;
BullHar = BullGartley OR BullButterfly OR BullBat OR BullCrab ;

Point4 = IIf(BullHar,ValueWhen(BullHar4,bi),Null);
BullHar = IIf(BullHar, IIf(Point4 == ValueWhen(BullHar,point4,0) AND ValueWhen(BullHar,bi,0) > bi ,False,BullHar),BullHar);

X = ValueWhen(BullHar4,V1L2);
Xbar = ValueWhen(BullHar4,V1Bar2);
A = ValueWhen(BullHar4,P1H2);
Abar = ValueWhen(BullHar4,P1bar2);
B = ValueWhen(BullHar4,V1L1);
Bbar = ValueWhen(BullHar4,V1bar1);
C1 = ValueWhen(BullHar4,P1H1);
C1bar = ValueWhen(BullHar4,P1bar1);
D = ValueWhen(BullHar,L);
Dbar = ValueWhen(BullHar,bi);
ABdXA = (A-B)/(A-X);
BCdAB = (C1-B)/(A-B);
ADdXA = (A-D)/(A-X);
BCdCD = (C1-D)/(C1-B);

PlotPattern = Dbar > C1bar;
if(LastValue(PlotPattern) AND bu)
{
Plot( LineArray(LastValue(Xbar),LastValue(X),LastValue(Abar),LastValue(A)),"",colorB lue,styleThick);
Plot(LineArray(LastValue(Abar),LastValue(A),LastValue(Bbar),LastValue(B)),"",c olorBlue,styleThick);
Plot(LineArray(LastValue(Bbar),LastValue(B),LastValue(C1bar),LastValue(C1)),"" ,colorBlue,styleThick);
Plot(LineArray(LastValue(C1bar),LastValue(C1),LastValue(Dbar),LastValue(D)),"" ,colorBlue,styleThick);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Bbar),LastValue(B)),"",c olorBlue,styleDashed);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Abar),LastValue(A)),"",c olorBlue,styleThick);
Plot(LineArray(LastValue(Abar),LastValue(A),LastValue(C1bar),LastValue(C1)),"" ,colorBlue,styleDashed);
Plot(LineArray(LastValue(Bbar),LastValue(B),LastValue(Dbar),LastValue(D)),"",c olorBlue,styleDashed);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Dbar),LastValue(D)),"",c olorBlue,styleDashed);

PlotText(NumToStr(LastValue(ABdXA),1.2),(LastValue(Bbar)+LastValue(Xbar))/2,(LastValue(B)+LastValue(X))/2,colorBlue);
PlotText(NumToStr(LastValue(BCdAB),1.2),(LastValue(C1bar)+LastValue(Abar))/2,(LastValue(C1)+LastValue(A))/2,colorBlue);
PlotText(NumToStr(LastValue(ADdXA),1.2) ,(LastValue(Dbar)+LastValue(Xbar))/2,(LastValue(D)+LastValue(X))/2,colorBlue);
PlotText(NumToStr(LastValue(BCdCD),1.2),(LastValue(Bbar)+LastValue(Dbar))/2,(LastValue(B)+LastValue(D))/2,colorBlue);
}

// Bearish Patterns

PTvalid = (V1Bar1 > P1Bar1 AND P1Bar1 > V1Bar2 AND V1Bar2 > P1Bar2) AND V1;

// Swing 4

BearGartley4 = PTvalid AND (P1H1-V1L2)/(P1H2-V1L2) > GBmin AND (P1H1-V1L2)/(P1H2-V1L2) < GBmax AND
(P1H1-V1L1)/(P1H1-V1L2) > GCmin AND (P1H1-V1L1)/(P1H1-V1L2) < GCmax;

BearBat4 = PTvalid AND (P1H1-V1L2)/(P1H2-V1L2) > BatBmin AND (P1H1-V1L2)/(P1H2-V1L2) < BatBmax AND
(P1H1-V1L1)/(P1H1-V1L2) > BatCmin AND (P1H1-V1L1)/(P1H1-V1L2) < BatCmax;

BearButterfly4 = PTvalid AND (P1H1-V1L2)/(P1H2-V1L2) > BtBmin AND (P1H1-V1L2)/(P1H2-V1L2) < BtBmax AND
(P1H1-V1L1)/(P1H1-V1L2) > BtCmin AND (P1H1-V1L1)/(P1H1-V1L2) < BtCmax;

BearCrab4 = PTvalid AND (P1H1-V1L2)/(P1H2-V1L2) > CBmin AND (P1H1-V1L2)/(P1H2-V1L2) < CBmax AND
(P1H1-V1L1)/(P1H1-V1L2) > CCmin AND (P1H1-V1L1)/(P1H1-V1L2) < CCmax;

// Poin D

BearGartley = IIf(HighestSince(bearGartley4,H) > ValueWhen(BearGartley4,V1L2) + (ValueWhen(BearGartley4,P1H2) - ValueWhen(BearGartley4,V1L2))*GDmin AND
HighestSince(bearGartley4,H) < ValueWhen(BearGartley4,V1L2) + (ValueWhen(BearGartley4,P1H2) - ValueWhen(BearGartley4,V1L2))*GDMax AND
LowestSince(BearGartley4,L) >= ValueWhen(BearGartley4,V1L1 ) AND
HighestSince(BearGartley4,H) == H, True, False);
BearGartley = BearGartley AND HighestSince(BearGartley4,H) > ValueWhen(BearGartley4,P1H1);

BearBat = IIf((HighestSince(BearBat4,H) > ValueWhen(BearBat4,V1L2) + (ValueWhen(BearBat4,P1H2) - ValueWhen(BearBat4,V1L2))*BatDmin AND
HighestSince(BearBat4,H) < ValueWhen(BearBat4,V1L2) + (ValueWhen(BearBat4,P1H2) - ValueWhen(BearBat4,V1L2))*BatDMax AND
LowestSince(BearBat4,L) >= ValueWhen(BearBat4,V1L1 ) AND
HighestSince(BearBat4,H) == H), True, False);
BearBat = BearBat AND HighestSince(BearBat4,H) > ValueWhen(BearBat4,P1H1);

BearButterfly = IIf(HighestSince(BearButterfly4,H) > ValueWhen(BearButterfly4,V1L2) + (ValueWhen(BearButterfly4,P1H2) - ValueWhen(BearButterfly4,V1L2))*BtDmin AND
HighestSince(BearButterfly4,H) < ValueWhen(BearButterfly4,V1L2) + (ValueWhen(BearButterfly4,P1H2) - ValueWhen(BearButterfly4,V1L2))*BtDMax AND
LowestSince(BearButterfly4,L) >= ValueWhen(BearButterfly4,V1L1 ) AND
HighestSince(BearButterfly4,H) == H, True, False);
BearButterfly = BearButterfly AND HighestSince(BearButterfly4,H) > ValueWhen(BearButterfly4,P1H2);

BearCrab = IIf(HighestSince(BearCrab4,H) > ValueWhen(BearCrab4,V1L2) + (ValueWhen(BearCrab4,P1H2) - ValueWhen(BearCrab4,V1L2))*CDmin AND
HighestSince(BearCrab4,H) < ValueWhen(BearCrab4,V1L2) + (ValueWhen(BearCrab4,P1H2) - ValueWhen(BearCrab4,V1L2))*CDMax AND
LowestSince(BearCrab4,L) >= ValueWhen(BearCrab4,V1L1 ) AND
HighestSince(BearCrab4,H) == H, True, False);
BearCrab =BearCrab AND HighestSince(BearCrab4,H) > ValueWhen(BearCrab4,P1H2);


BearHar4 = BearGartley4 OR BearButterfly4 OR BearBat4 OR BearCrab4 ;
BearHar = BearGartley OR BearButterfly OR BearBat OR BearCrab ;

Point4 = IIf(BearHar,ValueWhen(BearHar4,bi),Null);
BearHar = IIf(BearHar, IIf(Point4 == ValueWhen(BearHar,point4,0) AND ValueWhen(BearHar,bi,0) > bi ,False,BearHar),BearHar);

X = ValueWhen(BearHar4,P1H2);
Xbar = ValueWhen(BearHar4,P1Bar2);
A = ValueWhen(BearHar4,V1L2);
Abar = ValueWhen( BearHar4,V1bar2);
B = ValueWhen(BearHar4,P1H1);
Bbar = ValueWhen(BearHar4,P1bar1);
C1 = ValueWhen(BearHar4,V1L1);
C1bar = ValueWhen(BearHar4,V1bar1);
D = ValueWhen(BearHar,H);
Dbar = ValueWhen(BearHar,bi);

ABdXA = (B-A)/(X-A);
BCdAB = (B-C1)/(B-A);
ADdXA = (D-A)/(X-A);
BCdCD = (D-C1)/(B-C1);

PlotPattern = Dbar > C1bar;

if(LastValue(Plotpattern) AND be)

{
Plot( LineArray(LastValue(Xbar),LastValue(X),LastValue(Abar),LastValue(A)),"",colorR ed,styleThick);
Plot(LineArray(LastValue(Abar),LastValue(A),LastValue(Bbar),LastValue(B)),"",c olorRed,styleThick);
Plot(LineArray(LastValue(Bbar),LastValue(B),LastValue(C1bar),LastValue(C1)),"" ,colorRed,styleThick);
Plot(LineArray(LastValue(C1bar),LastValue(C1),LastValue(Dbar),LastValue(D)),"" ,colorRed,styleThick);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Bbar),LastValue(B)),"",c olorRed,styleDashed);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Abar),LastValue(A)),"",c olorRed,styleThick);
Plot(LineArray(LastValue(Abar),LastValue(A),LastValue(C1bar),LastValue(C1)),"" ,colorRed,styleDashed);
Plot(LineArray(LastValue(Bbar),LastValue(B),LastValue(Dbar),LastValue(D)),"",c olorRed,styleDashed);
Plot(LineArray(LastValue(Xbar),LastValue(X),LastValue(Dbar),LastValue(D)),"",c olorRed,styleDashed);

PlotText(NumToStr(LastValue(ABdXA),1.2),(LastValue(Bbar)+LastValue(Xbar))/2,(LastValue(B)+LastValue(X))/2,colorRed);
PlotText(NumToStr(LastValue(BCdAB),1.2),(LastValue(C1bar)+LastValue(Abar))/2,(LastValue(C1)+LastValue(A))/2,colorRed);
PlotText(NumToStr(LastValue(BCdCD),1.2) ,(LastValue(Dbar)+LastValue(Bbar))/2,(LastValue(D)+LastValue(B))/2,colorRed);
PlotText(NumToStr(LastValue(ADdXA),1.2) ,(LastValue(Dbar)+LastValue(Xbar))/2,(LastValue(D)+LastValue(X))/2,colorRed);

}

LatPattern = bullHar OR bearHar;
Lastpattern = LastValue(ValueWhen(LatPattern,IIf(BullGartley,1,IIf(BearGartley,-1,IIf(BullBat,2,IIf(BearBat,-2,
IIf(BullButterfly,3,IIf(BearButterfly,-3,IIf(BullCrab,4,IIf(BearCrab,-4,Null))))))))));
PatternName = WriteIf(LastPattern == 1,"Bullish Gartley",WriteIf(LastPattern == -1,"Bearish Gartley",WriteIf(LastPattern == 2,"Bullish Bat",
WriteIf(LastPattern == -2,"Bearish Bat",WriteIf(LastPattern == 3,"Bullish Butterfly",WriteIf(LastPattern == -3,"Bearish Butterfly",
WriteIf(LastPattern == 4,"Bullish Crab",WriteIf(LastPattern == -4,"Bearish Crab","None"))))))));


plotFractals = ParamToggle("Plot Fractals","Off|On",0);
if(PlotFractals)
{
PlotShapes(shapeSmallCircle*P1,colorRed,0,H,10);
PlotShapes(shapeSmallCircle*V1,colorBlue,O,L,-10);
}

GfxSetTextColor(IIf(LastPattern > 0, colorGreen,colorRed));
GfxTextOut("Last Pattern : " + PatternName,0,20);

Filter = BullHar OR BearHar;
Bull = BullHar; Bear = BearHar;
Color = IIf(Bull,colorGreen,colorRed);
AddColumn(IIf(Bull,1,IIf(Bear,-1,Null)),"Pattern",1.0,colorWhite,Color);
AddColumn(C,"c");
AddColumn((V-Ref(V,-1))/Ref(V,-1)*100,"v");

رد: معادلات (amibroker ) للفائدة



رد مع اقتباس
قديم 05-01-2013, 08:18 PM
  المشاركه #7

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

أتمنــــــــــــــــــــــــــى من الأخوان عند نقل أي معادلة لمنتدى آخر عدم نسب المجهود لنفســـه

سواء في هذه المعادلات أو معادلات أخرى وخاصة من الأخوان الذين لا يشاركـــــــــون

وهدفنــــــــــا هنا بهذا المنتدى الفائدة للجميع وبأمكاننا فعل ما يفعله الآخرون بشأن المخفـــي

ولكن ليس هذا من طبعنا بالمنتدى لأنه قائم منذ أنشائه على الوضوح

وهدفه أكتساب المعرفة وتبادل الخبرات

ودمتـــــــــــــــــــــــــــــــــم

أخوكم أبو محمد



رد مع اقتباس
قديم 05-01-2013, 10:08 PM
  المشاركه #8

عضو هوامير المميز

تاريخ التسجيل: Sep 2007
المشاركات: 714
WILLIAM غير متواجد حالياً  

ابو محمد الله لا يهينك مافي معادلة لموجات الذئب ومشكور سلفا


رد مع اقتباس
قديم 06-01-2013, 01:56 PM
  المشاركه #9

أبو ابراهيم

تاريخ التسجيل: Feb 2006
المشاركات: 9,466
الأصالة غير متواجد حالياً  

اقتباس:
المشاركة الأصلية كتبت بواسطة WILLIAM مشاهدة المشاركة
ابو محمد الله لا يهينك مافي معادلة لموجات الذئب ومشكور سلفا
شكرا لك يالغالي

نفس الطلب



رد مع اقتباس
قديم 06-01-2013, 02:07 PM
  المشاركه #10

كاتب قدير

تاريخ التسجيل: Oct 2005
المشاركات: 8,424
منادي_2005 غير متواجد حالياً  

أبشـــــــــــــــــــــــــروا يا أخوان مالكم الا مايسركم بس عطوني فرصة

عشان أجيب معادلة عليها القيمة



رد مع اقتباس
قديم 06-01-2013, 03:06 PM
  المشاركه #11

عضو هوامير المؤسس

تاريخ التسجيل: Jul 2005
المشاركات: 69
فتحي حسب الله غير متواجد حالياً  

بارك الله فيك و شكرا لك ابومحمد ...


رد مع اقتباس
قديم 06-01-2013, 07:52 PM
  المشاركه #12

عضو هوامير المميز

تاريخ التسجيل: Feb 2008
المشاركات: 234
ابونايف 323 غير متواجد حالياً  

اقتباس:
المشاركة الأصلية كتبت بواسطة منادي_2005 مشاهدة المشاركة
أتمنــــــــــــــــــــــــــى من الأخوان عند نقل أي معادلة لمنتدى آخر عدم نسب المجهود لنفســـه

سواء في هذه المعادلات أو معادلات أخرى وخاصة من الأخوان الذين لا يشاركـــــــــون

وهدفنــــــــــا هنا بهذا المنتدى الفائدة للجميع وبأمكاننا فعل ما يفعله الآخرون بشأن المخفـــي

ولكن ليس هذا من طبعنا بالمنتدى لأنه قائم منذ أنشائه على الوضوح

وهدفه أكتساب المعرفة وتبادل الخبرات

ودمتـــــــــــــــــــــــــــــــــم

أخوكم أبو محمد

أشهد الله تعالى على حبي لك فيه


بيض الله وجهك واناره بنور الايمان وحرمك ووالديك ومن تحب


على النار



رد مع اقتباس
إضافة رد


أدوات الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع



10:35 PM