indiTraders - Forum for the Active Indian Trader  

Go Back   indiTraders - Forum for the Active Indian Trader > Technical > Indicators & Systems

Indicators & Systems Compendium of Code

GFDL
Reply
 
Bookmark and Share LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 23-12-2013, 05:31 PM
nTupLe2 nTupLe2 is offline
Regulars
 
Join Date: Nov 2013
Location: kolkata+WB/Country
Posts: 216
Thanks: 172
Thanked 144 Times in 96 Posts
nTupLe2 will become famous soon enoughnTupLe2 will become famous soon enoughnTupLe2 will become famous soon enough
black not working tbots

hi

Code:
_SECTION_BEGIN("TBTS");
SetChartBkColor(ParamColor("Outer panel color ",colorLightYellow));
SetChartBkColor(ParamColor("BackGround Color", colorDarkGrey));


SetChartOptions(0,chartShowArrows|chartShowDates);
Title = EncodeColor(colorYellow)+ Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorSkyblue) +
 "  - " + Date() +" - "+"\n" +EncodeColor(colorYellow) +"O= "+O+",  H= "+H+",  L= "+L+",  C= "+C+",  V= "+ WriteVal(V);


NNN =ParamStr("### Paint Trend Bar Direction ###", "-- Color: Bull, Bear & No Trend --");
cBull = ParamColor("Bull Trend", ColorRGB(0,191,255));
cBear = ParamColor("Bear Trend", colorRed);
cNT = ParamColor("No Trend", colorLightGrey);

MMM =ParamStr("### TSL Setup ###", "-- Show, Style, Color, Period --");
Show_TSL =ParamToggle("Show TSL Line","No|Yes",1);
TSL_Mode = ParamToggle("TSL Mode","Normal|Stop n Reverse",1);
dtsl=50;
TSL_Style = ParamStyle("TSL Style", styleStaircase|styleDashed, maskAll);
TSL_ColorBull = ParamColor("TSL Color Bull", colorGreen);
TSL_ColorBear = ParamColor("TSL Color Bear", colorRed);
TSL_Len = Optimize("TSL_Len",Param("Optimize 1: TSL Period",10, 1, 50 ,1),1, 50 ,1);

CTFx1 =  Optimize("CTFx1",Param("Optimize 2: Cur_TF  X  =>",5, 1, 55 ,1),1, 50 ,1);
CTFx2 =  Optimize("CTFx2",Param("Optimize 3: Cur_TF  X  =>",22, 1, 55 ,1),1, 50 ,1);

Mode_Agressive =ParamToggle("Mode","Normal|Agressive",1);


Show_Ribbon =ParamToggle("Show Ribbon","No|Yes");

CloseTradeAtEOD = ParamToggle("Close Positions at EOD", "No|Yes");
MktCloseTime=Param("Market Close Time",152500,000000,235959,1 );


Color = SM_TrendBars(cBull, cBear,cNT );
Plot( C, "Price", Color, styleCandle | styleThick );

if (TSL_Mode==0)
{
	dtsl=SM_TSL(TSL_Len);
	dB=H>dtsl;
	dS=L<dtsl;

  TF = CTFx1*Interval();
  TimeFrameSet(TF);
	wtsl=SM_TSL(TSL_Len);
	WB=H>WTSL;
	WS=L<WTSL;
	TimeFrameRestore();

  mode = IIf(Mode_Agressive, expandFirst, expandLast);

  wtsl=TimeFrameExpand(wtsl,TF,mode);
	wb=TimeFrameExpand(WB,TF,mode);
	ws=TimeFrameExpand(WS,TF,mode);

  TF = CTFx2*Interval();
  TimeFrameSet(TF);
	 mtsl=SM_TSL(TSL_Len);
	 MB=H>MTSL;//Cross(H,mtsl);
	 MS=L<MTSL;//Cross(mtsl,L);
  TimeFrameRestore();
  mtsl=TimeFrameExpand(mtsl,TF,mode);
  mb=TimeFrameExpand(MB,TF,mode);
	ms=TimeFrameExpand(MS,TF,mode);  
  
	Buy = IIf((Low > WTSL AND Low > MTSL), DB, ((WB AND Low > DTSL AND Low > MTSL) OR (MB AND Low > DTSL AND Low > WTSL)));
	Sell=IIf(NOT CloseTradeAtEOD, (DS OR (DS AND WS) AND (Low > MTSL)), (DS OR (DS AND WS) AND (Low > MTSL)) OR TimeNum() > MktCloseTime);
	Short = IIf((High < WTSL AND High < MTSL), DS, (WS AND High < DTSL AND High < MTSL) OR (MS AND High < DTSL AND High < WTSL));
	Cover=IIf(NOT CloseTradeAtEOD, (DB OR (DB AND WB) AND (High < MTSL)), (DB OR (DB AND WB) AND (High < MTSL)) OR TimeNum() > MktCloseTime);
}
else
{
	dtsl=SM_TSL(TSL_Len, 1);

	dB=C>dtsl;
	dS=C<dtsl;
	Buy = Cover = DB;
	Sell = Short = DS;
}

if (Show_Ribbon)
{
  state=IIf(BarsSince(DB)<BarsSince(DS),1,0);
  col=IIf(state == 1 ,51,IIf(state ==0,3,1));
  Plot(2,"",COL,styleArea|styleOwnScale|styleNoLabel,0,100);
}


Buy=ExRem(Buy,Sell);
Sell=ExRem(Sell,Buy);
Short=ExRem(Short,Cover);
Cover=ExRem(Cover,Short);

BarsSincebuy = BarsSince( Buy );
BarsSinceshort = BarsSince( Short );
LastSignal = IIf( BarsSincebuy < BarsSinceshort, 1, -1 );
SellPrice=ValueWhen(Short,C);
BuyPrice=ValueWhen(Buy,C);

entry = IIf( LastSignal == 1, BuyPrice, ShortPrice );

Long=Flip(Buy,Sell);
Shrt=Flip(Short,Cover);

Relax = NOT Long AND NOT Buy AND NOT shrt AND NOT Sell AND NOT Sell AND NOT Cover;
SellSL=ValueWhen(Short,DTSL);
BuySL=ValueWhen(Buy,DTSL);
BuyDifference= BuyPrice - BuySL;
SellDifference = SellSL - SellPrice;

tar1 = IIf(Buy OR Long AND NOT Relax AND NOT Sell AND NOT Cover, (BuyPrice + BuyDifference), (SellPrice - SellDifference));
tar2 = IIf(Buy OR Long AND NOT Relax AND NOT Sell AND NOT Cover, (BuyPrice + (2*BuyDifference)), (SellPrice - (2*SellDifference)));
tar3 = IIf(Buy OR Long AND NOT Relax AND NOT Sell AND NOT Cover, (BuyPrice + (4*BuyDifference)), (SellPrice - (4*SellDifference)));

buyach1 = IIf((Buy OR Long AND NOT Relax AND NOT Cover AND NOT Short AND NOT Shrt), H > tar1, 0);
buyach2 = IIf((Buy OR Long AND NOT Relax AND NOT Cover AND NOT Short AND NOT Shrt), H > tar2, 0);
buyach3 = IIf((Buy OR Long AND NOT Relax AND NOT Cover AND NOT Short AND NOT Shrt), H > tar3, 0);

sellach1 = IIf((Short OR Shrt AND NOT Relax AND NOT Sell AND NOT Buy AND NOT Long), L < tar1, 0);
sellach2 = IIf((Short OR Shrt AND NOT Relax AND NOT Sell AND NOT Buy AND NOT Long), L < tar2, 0);
sellach3 = IIf((Short OR Shrt AND NOT Relax AND NOT Sell AND NOT Buy AND NOT Long), L < tar3, 0);

if (Show_TSL)
{
	tsl = IIf(Buy OR Long OR Short OR Shrt AND NOT Relax, dtsl,Null);
  tslcolor = IIf(Buy OR Long AND NOT Relax, TSL_ColorBull, TSL_ColorBear); 
	
 	Plot(tsl, "",tslcolor, TSL_Style, Null, Null, 0, 1);
}


_SECTION_END();


_SECTION_BEGIN("Alert Output");
VoiceAlert = ParamToggle("Voice Alert", "No|Yes");
EmailAlert = ParamToggle("E-mail Alert", "No|Yes");
AlertOutput = ParamToggle("Alert Output", "No|Yes");


if (VoiceAlert)
{
  str = " in "+Name()+" at current market price ";
 
	if (SelectedValue(Buy)==1) Say("Go Long"+str+C);
	if (SelectedValue(Short)==1) Say("Go Short"+str+C);
	if (TSL_Mode==0)
	{
		if (SelectedValue(Sell AND NOT Short)==1) Say("Exit long"+str+C);
		if (SelectedValue(Cover AND NOT Buy)==1) Say("Exit short"+str+C);

	}
}


if (EmailAlert)
{
  str = " signal generated on "+FullName();
  
	AlertIf( Buy, "EMAIL", "Long"+ str, 1 );
	if (TSL_Mode==0)
		AlertIf( Sell AND NOT Short, "EMAIL", "Exit Long"+str, 1 );

	AlertIf( Short, "EMAIL", "Short"+str, 1 );
	if (Mode_TSL==0)
		AlertIf( Cover AND NOT Buy, "EMAIL", "Exit Short"+str, 1 );
}


if (AlertOutput) 
{
  str = " signal generated on "+Name();

	AlertIf( Buy, "", "Long"+str, 4 );
	AlertIf( Sell AND NOT Short, "", "Exit Long"+str, 4 );
	AlertIf( Short, "", "Short"+str, 4 );
	AlertIf( Cover AND NOT Buy, "", "Exit Short"+str, 4 );
}

_SECTION_END();




_SECTION_BEGIN("TrendLines");

Show_TrendLine = ParamToggle("Show", "No|Yes");

if (Show_TrendLine)
{
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	THIS SECTION DRAWS TD TREND LINES */

percent  = 0.01 * 1; /* Adjust this percent as necessary,  */

 firstpoint = 2;

 L1 = Ref(L, -1);
 y0=LastValue(Trough(L,percent,firstpoint)); 
 y1=LastValue(Trough(L1,percent,1));

 for( i = 1; i < BarCount AND y0 >= y1; i++ )
 {
		firstpoint++;	
		y0=LastValue(Trough(L,percent,firstpoint));		 
 }

 x0=BarCount - 1 - LastValue(TroughBars(L,percent,firstpoint)); 
 x1=BarCount - 1 - LastValue(TroughBars(L1,percent)); 

 TLine=LineArray( x0, y0, x1, y1,True); 
 Plot( TLine, "Support Trend line", colorGreen, styleThick|styleDots ); 

 firstpoint = 2;
 H1 = Ref(H, -1);
 y0=LastValue(Peak(H,percent,firstpoint)); 
 y1=LastValue(Peak(H1,percent,1));

 for(i = 1; i < BarCount AND y0 <= y1; i++ )
 {
		firstpoint++;		
		y0=LastValue(Peak(H,percent,firstpoint)); 
 }
 x0=BarCount - 1 - LastValue(PeakBars(H,percent,firstpoint)); 
 x1=BarCount - 1 - LastValue(PeakBars(H1,percent)); 
TLine = LineArray( x0, y0, x1, y1,True ); 

Plot( TLine, "Resistance Trend line", colorRed, styleThick|styleDots ); 

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
}
_SECTION_END();



_SECTION_BEGIN("Bands");
Show_Bands = ParamToggle("Show", "No|Yes");
Periods = Param("Standard Error", 80, 3, 200, 1);
Smooth = Param("Smooth",14,2,100,1);


//NOTE1 = ParamStr("*** Standard Deviation 1 ***", "");
MB_Color=ParamColor("MidBand Color",colorLime);
MB_Style= ParamStyle("MidBand Style", styleDashed);

OB_Color=ParamColor("OuterBand Color",colorGreen);
OB_Style= ParamStyle("OuterBand  Style");



	/* Standard Error Bands */
	MALRCurve = SM_SmLR(Periods,Smooth);
	SErrorAvg = SM_SmSE(Periods,Smooth);

	UpperBand = MALRCurve + SErrorAvg;
	LowerBand = MALRCurve - SErrorAvg;

	if(Show_Bands)
	{
		Plot( MALRCurve , "MidBand",  MB_Color, MB_Style); 
		Plot( UpperBand , "UpperBand", OB_Color, OB_Style); 
		Plot( LowerBand , "LowerBand", OB_Color, OB_Style); 
	}

_SECTION_END();


// Linear Regression Line with 2 Standard Deviation Channels Plotted Above and Below
_SECTION_BEGIN("Linear Regression Channel");
Show_LRC = ParamToggle("Show", "No|Yes");
P = ParamField("Price Field",-1);
Daysback = Param("LRC Period",21,1,240,1);
shift = Param("LookBack Period",0,0,240,1);

//NOTE1 = ParamStr("*** Standard Deviation 1 ***", "");
SDP   = Param("### Standard Deviation 1 ###", 1.5, 0, 6, 0.1);
SDColor = ParamColor("SD1_Color", colorCycle );
SDStyle = ParamStyle("SD1_Style");

//NOTE2 = ParamStr("*** Standard Deviation 2 ***", "");
SDP2 = Param("### Standard Deviation 2 ###", 2.0, 0, 6, 0.1);
SDColor2 = ParamColor("SD2_Color", colorCycle );
SDStyle2 = ParamStyle("SD2_Style");




x = Cum(1);
lastx = LastValue( x ) - shift;
aa = LastValue( Ref(LinRegIntercept( p, Daysback), -shift) );
bb = LastValue( Ref(LinRegSlope( p, Daysback ), -shift) );
y = Aa + bb * ( x - (Lastx - DaysBack +1 ) );

if (Show_LRC) 
{
// ==================Plot the Linear Regression Line ================================================== ========
LRColor = ParamColor("LR Color", colorCycle );
LRStyle = ParamStyle("LR Style");
LRLine = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y, Null );
Plot( LRLine , "LinReg", LRCOLOR, LRSTYLE ); // styleDots );

// ========================== Plot 1st SD Channel ================================================== =============
SD = SDP/2;

width = LastValue( Ref(SD*StDev(p, Daysback),-shift) ); // THIS IS WHERE THE WIDTH OF THE CHANELS IS SET
SDU = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y+width , Null ) ;
SDL = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y-width , Null ) ;

Plot( SDU , "Upper Lin Reg", SDColor,SDStyle );
Plot( SDL , "Lower Lin Reg", SDColor,SDStyle );

// ========================== Plot 2d SD Channel ================================================== =============
SD2 = SDP2/2;

width2 = LastValue( Ref(SD2*StDev(p, Daysback),-shift) ); // THIS IS WHERE THE WIDTH OF THE CHANELS IS SET
SDU2 = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y+width2 , Null ) ;
SDL2 = IIf( x > (lastx - Daysback) AND BarIndex() < Lastx, y-width2 , Null ) ;

Plot( SDU2 , "Upper Lin Reg", SDColor2,SDStyle2 );
Plot( SDL2 , "Lower Lin Reg", SDColor2,SDStyle2 );
}

_SECTION_END();



_SECTION_BEGIN("Support & Resistance");

Show_SnR=ParamToggle("Show","No|Yes");

ResPrd=Param("Res.Period",10,0,200,1);
ResColor = ParamColor("Res.Color", colorRed);

Res1Style=ParamStyle("Res1.Style",styleNoTitle|styleThick|styleDots,maskAll);
Res2Style=ParamStyle("Res2.Style",styleNoTitle,maskAll);
Res3Style=ParamStyle("Res3.Style",styleNoTitle,maskAll);

SupPrd=Param("Sup.Period",10,0,200,1);
SupColor = ParamColor("Sup.Color", colorGreen);

Sup1Style=ParamStyle("Sup1.Style",styleNoTitle|styleThick|styleDots,maskAll);
Sup2Style=ParamStyle("Sup2.Style",styleLine|styleNoTitle,maskAll);
Sup3Style=ParamStyle("Sup3.Style",styleLine|styleNoTitle,maskAll);
	
if(Show_SnR)
{
     HaClose = EMA(SM_WP(),3);
		HaOpen  = AMA( Ref( HaClose, -1 ), 0.5 );
		HaHigh  = Max( H, Max( HaClose, HaOpen ) );
		HaLow   = Min( L, Min( HaClose, HaOpen ) );

		test = TEMA ( High , ResPrd ) ;

		PK = test > Ref(test,-1) AND Ref(test,1) < High;//Peak
		PKV0 = ValueWhen(PK,haHigh,0);//PeakValue0
		PKV1 = ValueWhen(PK,haHigh,1);//PeakValue1
		PKV2 = ValueWhen(PK,haHigh,2);//PeakValue2

		MPK = PKV2 < PKV1 AND PKV1 > PKV0 ;//MajorPeak

		MPKV = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, PKV1,1); //MajorPeakValue
		MPKD = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, DateNum(),1); //MajorPeakDate
		SD = IIf(DateNum() < LastValue(MPKD), Null, LastValue(MPKV));//SelectedDate

		Plot(SD, "Res1", ResColor,Res1Style);

		MPKV2 = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, PKV1,2); //MajorPeakValue
		MPKD2 = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, DateNum(),2); //MajorPeakDate
		SD2 = IIf(DateNum() < LastValue(MPKD2), Null, LastValue(MPKV2));//SelectedDate
		Plot(SD2, "Res2", ResColor,Res2Style);


		MPKV3 = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, PKV1,3); //MajorPeakValue
		MPKD3 = ValueWhen(Ref(MPK,-1) == 0 AND MPK == 1, DateNum(),3); //MajorPeakDate
		SD3 = IIf(DateNum() < LastValue(MPKD3), Null, LastValue(MPKV3));//SelectedDate
		Plot(SD3, "Res3", ResColor,Res3Style);


		test = TEMA ( Low , SupPrd ) ;

		SP = Ref(test,1) > Low AND test < Ref(test,-1);
		SPV0 = ValueWhen(SP,haLow,0);//PeakValue0
		SPV1 = ValueWhen(SP,haLow,1);//PeakValue1
		SPV2 = ValueWhen(SP,haLow,2);//PeakValue2

	
		MSP = SPV2 > SPV1 AND SPV1 < SPV0 ;//MajorPeak

		MSPV = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, SPV1,1);
		MSPD = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, DateNum(),1);
		SD = IIf(DateNum() < LastValue(MSPD), Null, LastValue(MSPV));
		Plot(SD,"Sup1", SupColor,Sup1Style);

		MSPV2 = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, SPV1,2);
		MSPD2 = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, DateNum(),2);
		SD2 = IIf(DateNum() < LastValue(MSPD2), Null, LastValue(MSPV2));
		Plot(SD2,"Sup2", SupColor,Sup2Style);

		MSPV3 = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, SPV1,3);
		MSPD3 = ValueWhen(Ref(MSP,-1) == 0 AND MSP == 1, DateNum(),3);
		SD3 = IIf(DateNum() < LastValue(MSPD3), Null, LastValue(MSPV3));
		Plot(SD3,"Sup3", SupColor,Sup3Style);
}

_SECTION_END();


_SECTION_BEGIN("Fibonacci");

Show_Fib = ParamToggle("Show Fibonacci Lines","No|Yes");
Show_FibLabel = ParamToggle("Show Text","No|Yes");

	pctH = 0.325;	HiLB = 1;
	pctL = 0.325;	LoLB = 1;
	Back = 1;
	Fwd  = 0;
	hts  = -33.5;
	style =styleLine;

x = BarIndex();

pRp  = PeakBars( H, pctH)==0;
yRp0 = SelectedValue(ValueWhen( pRp, H, HiLB));
xRp0 = SelectedValue(ValueWhen( pRp, x, HiLB));

pSp  = TroughBars( L, pctL)==0;
ySp0 = SelectedValue(ValueWhen( pSp, L, LoLB));
xSp0 = SelectedValue(ValueWhen( pSp, x, LoLB));
Delta = yRp0 - ySp0;

function fib(val)
{
 dist = (Delta * Val);
return
	IIf(Val < 1.0 AND xSp0 < xRp0, yRp0 - dist, 
	IIf(Val < 1.0 AND xSp0 > xRp0, ySp0 + dist,
	IIf(Val > 1.0 AND xSp0 < xRp0, yRp0 - dist, 
	IIf(Val > 1.0 AND xSp0 > xRp0, ySp0 + dist, Null)))); 
}

x0 = Min(xSp0,xRp0)-Back;
x1 = (BarCount -1);

//////////////////////////////////////////////////////////////////
r236 = fib(0.236);	r236I = LastValue (r236);
r382 = fib(0.382);	r382I = LastValue (r382);
r050 = fib(0.50);	r050I = LastValue (r050);
r618 = fib(0.618);	r618I = LastValue (r618);
r786 = fib(0.786);	r786I = LastValue (r786);
e127 = fib(1.272);	e127I = LastValue (e127);
e162 = fib(1.618);	e162I = LastValue (e162);
e200 = fib(2.00);	e200I = LastValue (e200);
e262 = fib(2.618);	e262I = LastValue (e262);
e424 = fib(4.236);	e424I = LastValue (e424);
//////////////////////////////////////////////////////////////////

p00 = IIf(xSp0 > xRp0,ySp0,yRp0); 	p00I = LastValue (p00);
p100 = IIf(xSp0 < xRp0,ySp0,yRp0); 	p100I = LastValue (p100);

color00 =IIf(xSp0 > xRp0,colorLime,colorRed);
color100 =IIf(xSp0 < xRp0,colorLime,colorRed);
//////////////////////////////////////////////////////////////////
numbars = LastValue(Cum(Status("barvisible")));
fraction= IIf(StrRight(Name(),3) == "", 3.2, 3.2);
//////////////////////////////////////////////////////////////////
if(Show_Fib)
{
Plot(LineArray(xRp0-Fwd,yRp0,x1,yRp0,Back),"PR",colorRed, styleDashed|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(xSp0-Fwd,ySp0,x1,ySp0,Back),"PS",colorGreen, styleDashed|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,r236,x1,r236,Back),"",45,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,r382,x1,r382,Back),"",44,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,r050,x1,r050,Back),"",colorGold,styleDashed|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,r618,x1,r618,Back),"",43,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,r786,x1,r786,Back),"",42,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,e127,x1,e127,Back),"e127",47,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,e162,x1,e162,Back),"e162",47,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,e200,x1,e200,Back),"p200",47,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,e262,x1,e262,Back),"p262",47,style|styleNoRescale,Null, Null,Fwd);
Plot(LineArray(x0-Fwd,e424,x1,e424,Back),"p424",25,style|styleNoRescale,Null, Null,Fwd);
}
//////////////////////////////////////////////////////////////////
if(Show_FibLabel)
{ 

//PlotText(" 0% = " + WriteVal(p00,fraction), LastValue(BarCount-8)+(numbars/hts), p00I, color00);


PlotText(" 0% = " + WriteVal(p00,fraction), 	LastValue(BarIndex())-(numbars/hts), p00I  + 0.05, color00);
PlotText("23% = " + WriteVal(r236,fraction), LastValue(BarIndex())-(numbars/hts), r236I + 0.05, 45);
PlotText("38% = " + WriteVal(r382,fraction), LastValue(BarIndex())-(numbars/hts), r382I + 0.05, 44);
PlotText("50% = " + WriteVal(r050,fraction), LastValue(BarIndex())-(numbars/hts), r050I + 0.05, 41);
PlotText("62% = " + WriteVal(r618,fraction), LastValue(BarIndex())-(numbars/hts), r618I + 0.05, 43);
PlotText("78% = " + WriteVal(r786,fraction), LastValue(BarIndex())-(numbars/hts), r786I + 0.05, 42);
PlotText("100% = " + WriteVal(p100,fraction), LastValue(BarIndex())-(numbars/hts),p100I + 0.05, color100);
PlotText("127% = " + WriteVal(e127,fraction), LastValue(BarIndex())-(numbars/hts),e127I + 0.05, 47);
PlotText("162% = " + WriteVal(e162,fraction), LastValue(BarIndex())-(numbars/hts),e162I + 0.05, 47);
PlotText("200% = " + WriteVal(e200,fraction), LastValue(BarIndex())-(numbars/hts),e200I + 0.05, 47);
PlotText("262% = " + WriteVal(e262,fraction), LastValue(BarIndex())-(numbars/hts),e262I + 0.05, 47);
PlotText("424% = " + WriteVal(e424,fraction), LastValue(BarIndex())-(numbars/hts),e424I + 0.05, 25);

}

_SECTION_END();


_SECTION_BEGIN("Day High/Low");
Show_DHL =ParamToggle("Plot Day High/Low","No|Yes");
ColorHi = ParamColor("Color High", colorBrightGreen);
ColorLo = ParamColor("Color Low", colorDarkRed);


// Day High Low And Pivots
//TIME FRAME CALCULATION
H1 = TimeFrameGetPrice("H", inDaily);		// Today's high
L1 = TimeFrameGetPrice("L", inDaily);		//				low

if (Show_DHL)
{
	Plot(H1, "",ColorHi, styleDashed|styleNoLabel);
	Plot(L1, "",ColorLo,		 styleDashed|styleNoLabel);

}
_SECTION_END();

_SECTION_BEGIN("Volume");
Show_Vol =ParamToggle("Show","No|Yes");
Color = ParamColor("Color", colorGrey50);
if (Show_Vol) 
	Plot( Volume, _DEFAULT_NAME(), Color, styleHistogram | styleOwnScale);


_SECTION_END();


/////////////////////////////////////////////////////////////////
_SECTION_BEGIN("MA Cross Over");
ShowCrossover = ParamToggle("Show", "No|Yes");

if(ShowCrossover)
{
  amv0=V*(O+H+L+C)/4;
  line=Sum(amv0,50)/Sum(V,50);
  CG=MA(C,14);
  holdline=HHV(CG,3);

	Plot(line,"Modified",colorYellow,styleNoLabel);
	Plot(cg,"A",10,styleNoLabel);
	Plot(Holdline,"B",13,styleNoLabel);
	PlotOHLC(Holdline,Cg,Holdline,Cg,"",13,styleCloud|styleNoLabel);
}


_SECTION_BEGIN("Message Board");
Show=ParamToggle("Show","No|Yes",1);

	GfxSelectFont( "Tahoma", 13, 100 );
	GfxSetBkMode( 1 );	
	GfxSetTextColor( colorWhite );

	if ( SelectedValue( LastSignal ) == 1 )
        GfxSelectSolidBrush( colorDarkGreen );
  else
        GfxSelectSolidBrush( colorDarkRed );

	y = Status( "pxchartheight" ) ;
	xx = Status( "pxchartwidth");

	Left = 1100;
	width = 310;
	x = 5;
	x2 = 290;

  MktCond = SM_MktCond(); 
  

if (Show)
{
	GfxSelectPen( colorLightBlue); 
	GfxRoundRect( x, y - 210, x2, y , 7, 7 ) ;
	GfxTextOut( "Thunder Bird Trading System V1.1",13,y-200);


	GfxTextOut( WriteIf(MktCond>0, "Market Condition : Trending",
						WriteIf(MktCond<0, "Market Condition : Ranging" ,"")),
						13, y-170);

	GfxTextOut( 
    WriteIf (Buy,   "Long At " +(BuyPrice),
    WriteIf (Short, "Short At "+(SellPrice),
    WriteIf (Relax, "NOT In Trade - RELAX!!!",""))), 
    13, y-120);


  GfxTextOut( 
    WriteIf ( Buy OR Short,  "StopLoss : " + dtsl, ""),
    13, y-100);

	if (TSL_MODE==0)
	{
		GfxTextOut( WriteIf(Sell AND NOT Short, "Exit Long At "+C,
							WriteIf(Cover AND NOT Buy, "Exit Short At "+C,"")),
							13, y-130);
	
	}

	GfxTextOut( 
    WriteIf (Long AND NOT Buy,   "Long At " +(BuyPrice),
    WriteIf (Shrt AND NOT Short, "Short At "+(SellPrice),
    WriteIf (Relax, "NOT In Trade - RELAX!!!",""))), 
    13, y-120);

	GfxTextOut( 
    WriteIf ( (Long AND NOT Buy) OR (Shrt AND NOT Short),  "StopLoss : " + dtsl, ""),
    13, y-100);



	GfxTextOut( 
		WriteIf (Long AND NOT Buy,   "Current P/L: "+(C-BuyPrice) +" Points",
		WriteIf (Shrt AND NOT Short, "Current P/L: "+(SellPrice-C)+" Points","")),
   		13, y-145);

	GfxTextOut( WriteIf (Long OR Buy OR Shrt OR Short, "Target 1 : "+tar1,""), 13, y-70);
	GfxTextOut( WriteIf (Long OR Buy OR Shrt OR Short, "Target 2 : "+tar2,""), 13, y-50);
	GfxTextOut( WriteIf (Long OR Buy OR Shrt OR Short, "Target 3 : "+tar3,""), 13, y-30);


	GfxTextOut( WriteIf (buyach1 OR sellach1,  "- Done!",""),	160, y-70); 
	GfxTextOut( WriteIf (buyach2 OR sellach2,  "- Done!",""),	160, y-50); 
	GfxTextOut( WriteIf (buyach3 OR sellach3,  "- Done!",""),	160, y-30); 


  C13=20;
  C14=2.1;
  C15=12;

	GfxSetBkMode( 1 );
	GfxSelectFont("Tahoma", Status("pxheight")/C13 );
	GfxSetTextAlign( 6 );
	GfxSetTextColor( ColorRGB (217,217,213));
	//GfxTextOut( "TBTS V1.0", Status("pxwidth")/C14, Status("pxheight")/C15 );
	GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );
	GfxSetTextColor( ColorRGB (103,103,103));
	//GfxTextOut( "By", Status("pxwidth")/C14, Status("pxheight")/C15*2.5 );
	GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );
	GfxSetTextColor( ColorRGB (103,103,103));
	//GfxTextOut( "www.stockmaniacs.net", Status("pxwidth")/C14, Status("pxheight")/C15*4 );
	GfxSelectFont("MS Sans Serif", 10, 500, False, False, 0);

	PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-25);
	PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-35);                      
	PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-30); 

	PlotShapes(IIf(Short, shapeSquare, shapeNone),colorRed, 0, H, Offset=25);
	PlotShapes(IIf(Short, shapeSquare, shapeNone),colorOrange, 0,H, Offset=35);                      
	PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-30);

	if (TSL_MODE==0)
	{
		PlotShapes(IIf(Sell, shapeStar, shapeNone),colorGold, 0, L, Offset=-15);
		PlotShapes(IIf(Cover, shapeStar, shapeNone),colorGold, 0,L, Offset=-15);
		PlotShapes(IIf(CloseTradeAtEOD==True AND TimeNum() > MktCloseTime AND NOT Relax, shapeStar, shapeNone),colorGold, 0,L, Offset=-15);
	}
}
_SECTION_END();


_SECTION_BEGIN("BackTesting");

BackTest_Margin = Param("Margin Required", 15,0.001,100,0.001);
BackTest_LotSize = Param("LotSize", 50,5,5000,5);
BackTest_nLots = Param("# Lots Traded",1,1,10000,1);


//Settings for exploration

	Filter=Buy OR Short;
	AddColumn( IIf( Buy, 66 , 83 ), "Signal", formatChar, colorDefault, IIf( Buy , colorGreen, colorRed ) );
	AddColumn(Close,"Entry Price",1.4, colorDefault, IIf( Buy , colorGreen, colorRed ));
	AddColumn(dtsl,"Stop Loss",1.4, colorDefault, IIf( Buy , colorGreen, colorRed ));
	AddColumn(tar1,"Target 1",1.4, colorDefault, IIf( Buy , colorGreen, colorRed ));
	AddColumn(tar2,"Target 2",1.4, colorDefault, IIf( Buy , colorGreen, colorRed ));
	AddColumn(tar3,"Target 3",1.4, colorDefault, IIf( Buy , colorGreen, colorRed ));
	AddColumn(Volume,"Volume",1.0, colorDefault, IIf ((Volume > 1.25 * EMA( Volume, 34 )),colorBlue,colorYellow));


	//Settings for Backtester
	SetOption("AllowSameBarExit", False);
	SetOption("AllowPositionShrinking", False);
	SetOption("FuturesMode", True);
	SetOption("InterestRate",0);
	SetOption("MaxOpenPositions",1);
	RoundLotSize = BackTest_LotSize;
	SetOption("MinShares",RoundLotSize);
	SetOption("PriceBoundChecking",False);
	//SetOption("CommissionMode",3);
	//SetOption("CommissionAmount",12.5/RoundLotSize);
	SetOption("AccountMargin",BackTest_Margin);
	SetOption("ReverseSignalForcesExit",True);
	SetOption("UsePrevBarEquityForPosSizing",True);
	ApplyStop(stopTypeTrailing, stopModePoint, DTSL, True, True );

	PositionSize = C*RoundLotSize*BackTest_nLots;
	SetTradeDelays(0,0,0,0);
	BuyPrice = Close;
	SellPrice = Close;
	ShortPrice = Close;
	CoverPrice = Close;

	//End of Settings for Backtester
_SECTION_END();



_SECTION_BEGIN("Magified Market Price");

FS=Param("Font Size",30,11,100,1);
Hor=Param("Horizontal Position",940,1,1200,1);
Ver=Param("Vertical Position",12,1,830,1); 

YC=TimeFrameGetPrice("C",inDaily,-1);
DD=Prec(C-YC,2);
xx=Prec((DD/YC)*100,2);

GfxSetBkMode( 1 );  

GfxSelectFont("Times New Roman", FS, 700, True ); 
GfxSetTextColor( colorLime ); 
GfxTextOut(""+C, Hor , Ver );


GfxSelectFont("Times New Roman", 11, 700, True ); 
GfxSetTextColor(colorYellow ); 
GfxTextOut(""+DD+"  ("+xx+"%)", Hor , Ver+45 );

_SECTION_END();
need help.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 31-12-2013, 08:31 PM
xyte's Avatar
xyte xyte is offline
indiTraders Team
 
Join Date: Mar 2009
Location: In front of my PC, mostly
Posts: 787
Thanks: 6,633
Thanked 3,497 Times in 729 Posts
xyte has a reputation beyond repute
xyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond reputexyte has a reputation beyond repute
Default

This AFL won't work because it contains a few DLL based calls.

You will need to obtain the DLL as well and copy it in the \AmiBroker\Plugins directory for it to work.
__________________
You can only talk rubbish if you're aware of knowledge. - Karl Pilkington
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
The Following 3 Users Say Thank You to xyte For This Useful Post:
  #3 (permalink)  
Old 12-04-2016, 01:38 PM
unitedfxtraders unitedfxtraders is offline
Newbie
 
Join Date: Apr 2016
Posts: 2
Thanks: 0
Thanked 1 Time in 1 Post
unitedfxtraders is on a distinguished road
Default

Hi, try this webiste http://www.unitedforextraders.com , they help you with coding and EA trading. Good luck!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
The Following User Says Thank You to unitedfxtraders For This Useful Post:
Reply

indiTraders - Forum for the Active Indian Trader > Technical > Indicators & Systems


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


GFDL

All times are GMT +5.5. The time now is 07:23 AM.


vBulletin Copyright by vBulletin

Content Relevant URLs by vBSEO 3.3.2