Formula needed for dt oscilator

#1
DEAR metastock experts

kindly code following amibroker formula for metastock,

/* DT Oscillator
**
** AFL translation by X-Trader
** http://www.x-trader.net
**
*/

PeriodRSI= Param("PeriodRSI", 13, 1, 250, 1);
PeriodStoch=Param("PeriodStoch", 8, 1, 250, 1);
MAType=Param("MAType", 1, 1, 2, 1);
PeriodSK=Param("PeriodSK", 5, 1, 250, 1);
PeriodSD=Param("PeriodSD", 3, 1, 250, 1);
Upper=Param("Upper", 70, 50, 100, 1);
Lower=Param("Lower", 30, 0, 50, 1);


StoRSI= 100*(( RSI( PeriodRSI) - LLV( RSI( PeriodRSI ) , PeriodStoch ) ) / ( (
HHV( RSI( PeriodRSI) , PeriodStoch ) ) - LLV(RSI( PeriodRSI ), PeriodStoch ) )
);

if(MAType==1)
{
SK=MA(StoRSI,PeriodSK);
SD=MA(SK,PeriodSD);
}

if(MAType==2)
{
SK=EMA(StoRSI,PeriodSK);
SD=EMA(SK,PeriodSD);
}

Plot(SK,"DTOscSK",ParamColor( "ColorSK", colorBlue ),styleLine|styleNoLabel);
Plot(SD,"DTOscSD",ParamColor( "ColorSD", colorBlack ),styleDashed|styleNoLabel);
Plot(0,"ZeroLine",ParamColor( "ColorZero", colorBlack ),styleLine|styleNoLabel);
Plot(Upper,"Upper",ParamColor( "ColorUpper", colorRed ),styleLine);
Plot(Lower,"Lower",ParamColor( "ColorLower", colorGreen ),styleLine);

//////
///Following lines of code is added by me to
///display 15 min oscillator
//////

TimeFrameSet(in15Minute);
PeriodRSI= Param("PeriodRSI", 13, 1, 250, 1);
PeriodStoch=Param("PeriodStoch", 8, 1, 250, 1);
MAType=Param("MAType", 1, 1, 2, 1);
PeriodSK=Param("PeriodSK", 5, 1, 250, 1);
PeriodSD=Param("PeriodSD", 3, 1, 250, 1);
Upper=Param("Upper", 70, 50, 100, 1);
Lower=Param("Lower", 30, 0, 50, 1);


StoRSI= 100*(( RSI( PeriodRSI) - LLV( RSI( PeriodRSI ) , PeriodStoch ) ) / ( (
HHV( RSI( PeriodRSI) , PeriodStoch ) ) - LLV(RSI( PeriodRSI ), PeriodStoch ) )
);

if(MAType==1)
{
SK=MA(StoRSI,PeriodSK);
SD=MA(SK,PeriodSD);
}

if(MAType==2)
{
SK=EMA(StoRSI,PeriodSK);
SD=EMA(SK,PeriodSD);
}
TimeFrameRestore();
k=TimeFrameExpand(SK,in15Minute);
d=TimeFrameExpand(SD,in15Minute);
Plot(k,"DTOscSK1",ParamColor( "ColorSK1", colorRed ),styleLine|styleDots|styleNoLabel);
Plot(d,"DTOscSD1",ParamColor( "ColorSD1", colorOrange ),styleLine|styleDots|styleNoLabel);


thanks in advance

sameer
 

rkkarnani

Well-Known Member
#2
Dont understand AFL language.
Try this for Metastock :

PeriodRSI:=Input("PeriodRSI",1,250,13);
PeriodStoch:=Input("PeriodStoch",1,250,8);
MAType:=Input("MAType",1,2,1);
PeriodSK:=Input("PeriodSK",1,250,5);
PeriodSD:=Input("PeriodSD",1,250,3);
{------------------------------------}
StoRSI:= 100*((RSI(PeriodRSI)-LLV(
RSI(PeriodRSI),PeriodStoch))/((
HHV( RSI(PeriodRSI),PeriodStoch)) -
LLV(RSI(PeriodRSI),PeriodStoch)));
{---------------------------------}
SK:=If(MaType=1,
Mov(StoRSI,PeriodSK,S),
Mov(StoRSI,PeriodSK,E));
SD:=If(MaType=1,
Mov(SK,PeriodSD,S),
Mov(SK,PeriodSD,E));
{--------------------------------}
SK;SD
 

Similar threads