Simple Coding Help - No Promise.

KelvinHand

Well-Known Member
hi , can anyone help me and convert this Tradestation code to ami ?
i need this very much thanks and appreciate that.
If you need it very much, then do the standard procedure here:
1. Put up a picture of the tradestation of this indicator /with the trading system.
2. Give more information:
- Trading operation instruction/ebooks.
- Where the website.
- ...etc

I not going do something without gaining something.

Is this the picture:
 
Hi, I am new to AFL and Traderji , so I didn't see this thread before and I opened a thread for this simple question , I will rather repeat it here :

How to calculate and printout an array of MA cossing periods ?

Exp. : EMA 20 and EMA 60 , how many bars since last crossing [up/down]
And the same for all periods after crossings on the chart as outprint

this code compiles but doesn't work and doesn't get the arrow,
also it seems quite laborious :D

_SECTION_BEGIN("TrendBars");
E20big = False;
EMA20 = 0;
EMA60 = 0;
ii=0;
jj=0;
EMA20 == EMA(C,20);
EMA60 == EMA(C,60);
E20big == IIf(EMA20 > EMA60,True,False);

if (E60big == True)
{
ii==Barssince(EMA20>EMA60);
jj==Barssince(EMA20<EMA60);
printf(EncodeColor( colorBlack ) + "| Prev Short Trend : " + jj + "," );
printf(EncodeColor( colorBlack ) + " Long Trend : " + ii + " | " );
}
else
{
ii==Barssince(EMA20<EMA60);
jj==Barssince(EMA20>EMA60);
printf(EncodeColor( colorBlack ) + "| Short Trend : " + ii + "," );
printf(EncodeColor( colorBlack ) + " Prev Long Trend : " + jj + " | " );
}
_SECTION_END();

Thank you for your answer
 
If you need it very much, then do the standard procedure here:
1. Put up a picture of the tradestation of this indicator /with the trading system.
2. Give more information:
- Trading operation instruction/ebooks.
- Where the website.
- ...etc

I not going do something without gaining something.

Is this the picture:
hi KelvinHand and thanks for advanced , yes this is the picture can you send code thanks,

this is the ts picture and i gave it from another forum ,
[/QUOTE]
 
Last edited:

amandeep86

Well-Known Member
Hi friends,

I m looking for AFL with Exploration facility to scan stocks with Rising/falling 20 MA in a particular time frame.

Please advise
 
_SECTION_BEGIN("MyMagic");
SetBarsRequired(100000,0);
GraphXSpace = 15;
SetChartOptions(0,chartShowArrows|chartShowDates);
SetChartBkColor(ParamColor("bkcolor",ColorRGB(0,0, 0)));
GfxSetBkMode(0);
GfxSetOverlayMode(1);
SetBarFillColor(IIf(C>O,ParamColor("Candle UP Color", colorGreen),IIf(C<=O,ParamColor("Candle Down Color", colorRed),colorLightGrey)));
//Plot(C,"\nPrice",IIf(C>O,ParamColor("Wick UP Color", colorDarkGreen),IIf(C<=O,ParamColor("Wick Down Color", colorDarkRed),colorLightGrey)),64,0,0,0,0);

SetTradeDelays(1,1,1,1);

HaClose = (O + H + L + C)/4;
HaOpen = AMA( Ref( HaClose, -1 ), 0.5 );
HaHigh = Max( H, Max( HaClose, HaOpen ) );
HaLow = Min( L, Min( HaClose, HaOpen ) );
xDiff = (HaHigh - Halow) * 10000;
barcolor = IIf(HaClose >= HaOpen,colorGreen,colorRed);
PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "", barcolor, styleCandle );

_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));

Factor=Param("Factor",2,1,10,0.1);
Pd=Param("ATR Periods",11,1,100,1);
Up=(H+L)/2+(Factor*ATR(Pd));
Dn=(H+L)/2-(Factor*ATR(Pd));
iATR=ATR(Pd);
TrendUp=TrendDown=Null;
trend[0]=1;
changeOfTrend=0;
flag=flagh=0;

for (i = 1; i <BarCount-1; i++) {
TrendUp = Null;
TrendDown = Null;

trend=1;


if (Close>Up[i-1]) {
trend=1;
if (trend[i-1] == -1) changeOfTrend = 1;

}
else if (Close<Dn[i-1]) {
trend=-1;
if (trend[i-1] == 1) changeOfTrend = 1;
}
else if (trend[i-1]==1) {
trend=1;
changeOfTrend = 0;
}
else if (trend[i-1]==-1) {
trend=-1;
changeOfTrend = 0;
}

if (trend<0 && trend[i-1]>0) {
flag=1;
}
else {
flag=0;
}

if (trend>0 && trend[i-1]<0) {
flagh=1;
}
else {
flagh=0;
}

if (trend>0 && Dn<Dn[i-1]){
Dn=Dn[i-1];
}

if (trend<0 && Up>Up[i-1])
{ Up=Up[i-1];
}

if (flag==1)
{ Up=(H+L)/2+(Factor*iATR);;
}
if (flagh==1)
{ Dn=(H+L)/2-(Factor*iATR);;
}
if (trend==1) {
TrendUp=Dn;
if (changeOfTrend == 1) {
TrendUp[i-1] = TrendDown[i-1];
changeOfTrend = 0;
}
}
else if (trend==-1) {
TrendDown=Up;
if (changeOfTrend == 1) {
TrendDown[i-1] = TrendUp[i-1];
changeOfTrend = 0;
}
}
}

Plot(TrendUp,"Trend",colorGreen);
Plot(TrendDown,"Down",colorRed);

Buy = trend==1;
Sell=trend==-1;

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


BuyPrice=ValueWhen(Buy,C);
SellPrice=ValueWhen(Sell,C);
ShortPrice=ValueWhen(Short,C);
CoverPrice=ValueWhen(Cover,C);


Title = EncodeColor(colorWhite)+ "My Magic AFL" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
" - " + Date() +" - "+"\n" +EncodeColor(colorRed) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+
"Cl-"+C+" "+ "Vol= "+ WriteVal(V)+"\n"+
EncodeColor(colorLime)+
WriteIf (Buy , " GO LONG / Reverse Signal at "+C+" ","")+
WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ","")+"\n"+EncodeColor(colorYellow)+
WriteIf(Sell , "Total Profit/Loss for the Last Trade Rs."+(C-BuyPrice)+"","")+
WriteIf(Buy , "Total Profit/Loss for the Last trade Rs."+(SellPrice-C)+"","");
//WriteIf(Long AND NOT Buy, "Trade : Long - Entry price Rs."+(BuyPrice),"")+
WriteIf(Short AND NOT Sell, "Trade : Short - Entry price Rs."+(SellPrice),"")+"\n"+
//WriteIf(Long AND NOT Buy, "Current Profit/Loss Rs."+(C-BuyPrice)+"","")+
//WriteIf(Short AND NOT Sell, "Current Profit/Loss Rs."+(SellPrice-C)+"",""));

PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-40);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-50);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-45);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorRed, 0, H, Offset=40);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorOrange, 0,H, Offset=50);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-45);

TrendSL=IIf(trend==1,TrendUp,TrendDown);

for(i=BarCount-1;i>1;i--)
{
if(Buy == 1)
{
entry = C;
sig = "BUY";
sl = TrendSL;
tar1 = entry + (entry * .0050);
tar2 = entry + (entry * .0092);
tar3 = entry + (entry * .0179);

bars = i;
i = 0;
}
if(Sell == 1)
{
sig = "SELL";
entry = C;
sl = TrendSL;
tar1 = entry - (entry * .0050);
tar2 = entry - (entry * .0112);
tar3 = entry - (entry * .0212);


bars = i;
i = 0;
}
}
Offset = 20;
Clr = IIf(sig == "BUY", colorLime, colorRed);
ssl = IIf(bars == BarCount-1, TrendSL[BarCount-1], Ref(TrendSL, -1));
sl = ssl[BarCount-1];


Plot(LineArray(bars-Offset, tar1, BarCount, tar1,1), "", Clr, styleLine|styleDots, Null, Null, Offset);
Plot(LineArray(bars-Offset, tar2, BarCount, tar2,1), "", Clr, styleLine|styleDots, Null, Null, Offset);
Plot(LineArray(bars-Offset, tar3, BarCount, tar3,1), "", Clr, styleLine|styleDots, Null, Null, Offset);

Plot(LineArray(bars-Offset, sl, BarCount, sl,1), "", colorDarkRed, styleLine|styleLine, Null, Null, Offset);
Plot(LineArray(bars-Offset, entry, BarCount, entry,1), "", colorGreen, styleLine|styleLine, Null, Null, Offset);


/*for (i=bars; i <BarCount;i++)
{
PlotText(""+sig+"@"+entry, BarCount-5,entry,Null,colorBlue);
PlotText("T1@"+tar1,BarCount-5,tar1,Null,Clr);PlotText("T2@"+tar2,BarCount-5,tar2,Null,Clr);PlotText ("T3@"+tar3,BarCount-5,tar3,Null,Clr);

}*/

messageboard = ParamToggle("Message Board","Show|Hide",1);
if (messageboard == 1 )
{
GfxSelectFont( "Tahoma", 13, 100 );
GfxSetBkMode( 1 );
GfxSetTextColor( colorWhite );

if ( sig =="BUY")
{
GfxSelectSolidBrush( colorBlue ); // this is the box background color
}
else
{
GfxSelectSolidBrush( colorRed ); // this is the box background color
}
pxHeight = Status( "pxchartheight" ) ;
xx = Status( "pxchartwidth");
Left = 1100;
width = 310;
x = 5;
x2 = 290;

y = pxHeight;

GfxSelectPen( colorGreen, 1); // broader color
GfxRoundRect( x, y - 98, x2, y , 7, 7 ) ;
GfxTextOut( ( "My Magic"),13,y-100);
GfxTextOut( (" "),27,y-100);
GfxTextOut( ("Last " + sig + " Signal came " + (BarCount-bars-1) * Interval()/60 + " mins ago"), 13, y-80) ; // The text format location
GfxTextOut( ("" + WriteIf(sig =="BUY",sig + " @ ",sig + " @") + " : " + entry), 13, y-60);
GfxTextOut( ("Trailing SL : " + Ref(TrendSL,-1) + " (" + WriteVal(IIf(sig == "SELL",entry-sl,sl-entry), 2.2) + ")"), 13, y-40);
/*GfxTextOut( ("TGT:1 : " + tar1), 13, y -80);
GfxTextOut( ("TGT:2 : " + tar2), 13,y-60);
GfxTextOut( ("TGT:3 : " + tar3), 13,y-40);*/
GfxTextOut( ("Current P/L : " + WriteVal(IIf(sig == "BUY",(C-entry),(entry-C)),2.2)), 13, y-22);;




////////////////// PARABOLIC SAR///////////////
_SECTION_BEGIN("PARABOLIC SAR");

/////////////////////////////////




IAF = 0.02; // acceleration factor
MaxAF = 0.2; // max acceleration

psar = Close; // initialize
long = 1; // assume long for initial conditions
af = IAF; // init acelleration factor
ep = Low[ 0 ]; // init extreme point
hp = High [ 0 ];
lp = Low [ 0 ];


for( i = 2; i < BarCount; i++ )

{

if ( long )

{

psar [ i ] = psar [ i-1 ] + af * ( hp - psar [ i-1 ] );

}

else

{

psar [ i ] = psar [ i-1 ] + af * ( lp - psar [ i-1 ] );

}



reverse = 0;

//check for reversal

if ( long )

{

if ( Low [ i ] < psar [ i ] )

{

long = 0; reverse = 1; // reverse position to Short

psar [ i ] = hp; // SAR is High point in prev trade

lp = Low [ i ];

af = IAF;

}

}

else

{

if ( High [ i ] > psar [ i ] )

{

long = 1; reverse = 1; //reverse position to long

psar [ i ] = lp;

hp = High [ i ];

af = IAF;

}

}



if ( reverse == 0 )

{

if ( long )

{

if ( High [ i ] > hp )

{

hp = High [ i ];

af = af + IAF;

if( af > MaxAF ) af = MaxAF;

}



if( Low[ i - 1 ] < psar[ i ] ) psar[ i ] = Low[ i - 1 ];

if( Low[ i - 2 ] < psar[ i ] ) psar[ i ] = Low[ i - 2 ];

}

else

{

if ( Low [ i ] < lp )

{

lp = Low [ i ];

af = af + IAF;

if( af > MaxAF ) af = MaxAF;

}



if( High[ i - 1 ] > psar[ i ] ) psar[ i ] = High[ i - 1 ];

if( High[ i - 2 ] > psar[ i ] ) psar[ i ] = High[ i - 2 ];



}

}

}



//Plot( Close, "Price", colorBlack, styleCandle );

Plot( psar, "SAR", colorRed, styleDots | styleNoLine | styleThick );

range = 15;//Param("Periods", 14, 2, 200, 1 );

ADXi=ADX(range);

PDIi=PDI(range);

MDIi=MDI(range);

//Plot( ADXi=ADX(range), _DEFAULT_NAME(), ParamColor( "ADX color", colorBlue ), ParamStyle("ADX style", styleThick ) );

//Plot( PDIi=PDI(range), "", ParamColor( "+DI color", colorGreen ), ParamStyle("+DI style") );

//Plot( MDIi=MDI(range), "", ParamColor( "-DI color", colorRed ), ParamStyle("-DI style") );

uptrend=PDIi>MDIi;//+di greater than -di

downtrend=MDIi>PDIi;//-di greater than +di

Ribboncol=IIf(upTrend,colorGreen, IIf(downtrend,colorRed, colorBlack));

Plot(6, "", Ribboncol, styleOwnScale|styleArea|styleNoLabel, -7.5,100);



Buy=Cross(L,psar) AND uptrend;

Sell=Cross(psar,H) AND downtrend;

//PlotShapes(Sell*shapeDownArrow,colorRed);

//PlotShapes(Buy*shapeUpArrow,colorGreen);

//Magfied Market Price
FS=Param("Font Size",30,11,100,1);
GfxSelectFont("Times New Roman", FS, 700, True );
GfxSetBkMode( colorWhite );
GfxSetTextColor( ParamColor("Color",colorGreen) );
Hor=Param("Horizontal Position",940,1,1200,1);
Ver=Param("Vertical Position",12,1,830,1);
GfxTextOut(""+C, Hor , Ver );
YC=TimeFrameGetPrice("C",inDaily,-1);
DD=Prec(C-YC,2);
xx=Prec((DD/YC)*100,2);
GfxSelectFont("Times New Roman", 11, 700, True );
GfxSetBkMode( colorBlack );
GfxSetTextColor(ParamColor("Color",colorYellow) );
GfxTextOut(""+DD+" ("+xx+"%)", Hor , Ver+45 );

}

_SECTION_END();

//_SECTION_BEGIN("Trend Lines");
p1 = Param("TL 1 Periods", 5, 5, 50, 1);
p2 = Param("TL 2 Periods", 3, 3, 25, 1);
TL1 = LinearReg(C, p1);
TL2 = EMA(TL1, p2);
Col1 = IIf(TL1 > TL2, ParamColor("TL Up Colour", colorGreen), ParamColor("TL Dn Colour", colorRed));
Plot(TL1, "TriggerLine 1", Col1, styleLine|styleThick|styleNoLabel);
Plot(TL2, "TriggerLine 2", Col1, styleLine|styleThick|styleNoLabel);
_SECTION_END();



DEAR ALL CAN ANY ONE ADD MAGNIFIED MARKET PRICE AND HIGHLIGHTED BUY SELL LEVELS OR MESSAGED BOXED THANKS PLS GIVEN ERROR PLS
 
Originally Posted by vikas1moon View Post
Hello Seniors,

Can someone provide an afl which is based on price action HH and HL or LH and LL and their breakouts in consolidation.

which gives buy and sell signals should be compatible on 5min and higher time frames charts.

My regards
Vk2u
Anyone with answer...
Any help on related afl will be highly appreciated.
 

Similar threads