Skip to main content

KP Indicators for Amibroker (AFL)

Anonymous over 13 years ago Amibroker (AFL)

  • Rating:
    3 / 5 (Votes 5)
  • Tags:
    amibroker

Here the KP Indicators.

Attention!!

You’ll have to seperate them yourself!
There are 9 indicators in here.

Indicator NAME → is in _SECTION_BEGIN(* NAME *);

So, between _SECTION_BEGIN(); and _SECTION_END(); is 1 indcator!

Hope this is clear, otherwise, love to read your comments ;-)

You also need the kpami.dll which is a plugin, which can be downloaded from:
http://wisestocktrader.com/indicators/174-the-foundation-by-southwind-v-13-00-int its the plugin

Enjoy!

Indicator / Formula

Copy & Paste Friendly
_SECTION_BEGIN("KP Fast 1");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
//tskp_fast1val1, tskp_fast1val2, tskp_fast1val3, tskp_fast1val4
dummy=E_TSKPFAST1(Open,High,Low,Close,Volume);
//Histogram
Plot(tskp_fast1val1,"Fast1_1",ParamColor("Fast1_1Color",colorBlue),ParamStyle("Fast1_1Style",styleHistogram|styleThick,maskHistogram));
Plot(tskp_fast1val2,"Fast1_2",ParamColor("Fast1_2Color",colorRed),ParamStyle("Fast1_2Style",styleHistogram|styleThick,maskHistogram));
//Lines
Plot(tskp_fast1val3,"Fast1_3",ParamColor("Fast1_3Color",colorYellow),ParamStyle("Fast1_3Style",styleLine|styleThick));
Plot(tskp_fast1val4,"Fast1_4",ParamColor("Fast1_4Color",colorCustom11),ParamStyle("Fast1_4Style",styleLine|styleThick));
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

_SECTION_BEGIN("KP Fast 2");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
//tskp_fast2val1, tskp_fast2val2
dummy=E_TSKPFAST2(Open,High,Low,Close,Volume);
Plot(tskp_fast2val1,"Fast2_1",ParamColor("ColorUp",colorBlue),ParamStyle("Style",style=styleHistogram|styleThick,maskDefault)); 
Plot( tskp_fast2val2,"Fast2_2",ParamColor("ColorDown",colorRed),ParamStyle("Style",style=styleHistogram|styleThick,maskDefault)); 
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

_SECTION_BEGIN("KP Fast 3 Line or Histogram");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
//r[0] = mydll.call("E_GETRETURN",stateID,0);
//r[1] = Math.max(r[0],0);
Line = ParamToggle("Line or Histogram","Histogram|Line",1);
// tskp_mediumma,tskp_mediumup,tskp_mediumdown
fast3 = E_TSKPFAST3(Open,High,Low,Close,Volume);
Color = IIf(fast3>0,colorBlue,colorRed);
//Line or Histogram
if (Line)
Plot( fast3,"Fast3",Color,styleThick|styleNoLabel);
else
Plot(fast3,"Fast3",Color,styleHistogram|styleThick|styleNoLabel);
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

_SECTION_BEGIN("KP Medium All Histogram");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
// tskp_mediumma,tskp_mediumup,tskp_mediumdown
dummy = E_TSKPMEDIUM(Close);
Plot(tskp_mediumup,"MediumUp",ParamColor("UpColor",colorBlue ),ParamStyle("UpStyle",styleHistogram|styleThick,maskHistogram));
Plot(tskp_mediumdown,"MediumDown",ParamColor("DownColor",colorRed ),ParamStyle("DownStyle",styleHistogram|styleThick,maskHistogram));
Plot(tskp_mediumma,"MediumMA",ParamColor("MAColor",colorWhite ),ParamStyle("MAStyle",styleHistogram|styleThick,maskHistogram));
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title=FullName();
_SECTION_END();

_SECTION_BEGIN("KP Medium");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
//tskp_mediumma,tskp_mediumup,tskp_mediumdown
dummy = E_TSKPMEDIUM(Close);
Plot(tskp_mediumma,"MediumMA",ParamColor("MAColor",colorWhite ),ParamStyle("MAStyle",styleLine|styleThick));
Plot(tskp_mediumup,"MediumUp",ParamColor("UpColor",colorBlue ),ParamStyle("UpStyle",styleHistogram|styleThick,maskHistogram));
Plot(tskp_mediumdown,"MediumDown",ParamColor("DownColor",colorRed ),ParamStyle("DownStyle",styleHistogram|styleThick,maskHistogram));
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title=FullName();
_SECTION_END();

_SECTION_BEGIN("KP S906 and 907 Modus");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
sc=E_TSKPSCORECARD(High,Low,Close,Volume);
//tskp_scorecard1, tskp_scorecard2, tskp_scorecard3, tskp_scorecard4
kp906=tskp_scorecard1;
kp907=tskp_scorecard2;
Plot(kp906,"906",ParamColor("906Color",colorBlack ),ParamStyle("906Style",styleLine|styleThick));
Plot(kp907,"907",ParamColor("907Color",colorWhite ),ParamStyle("907Style",styleLine|styleThick));
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

_SECTION_BEGIN("KP S906 and 907");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
sc=E_TSKPSCORECARD(High,Low,Close,Volume);
//tskp_scorecard1, tskp_scorecard2, tskp_scorecard3, tskp_scorecard4
kp906=tskp_scorecard1;
kp907=tskp_scorecard2;
Plot(IIf(kp906<0,kp906,0),"906Dn",ParamColor("906DnColor",colorRed ),ParamStyle("906DnStyle",styleHistogram|styleThick));
Plot(IIf(kp906>0,kp906,0),"906Up",ParamColor("906UpColor",colorBlue ),ParamStyle("906UpStyle",styleHistogram|styleThick));
Plot(kp907,"907",ParamColor("907Color",colorWhite),ParamStyle("907Style",styleHistogram|styleThick));
Disp1=ParamToggle("Plot 906 Line","Show|Hide",0);
if(Disp1){
Plot(kp906,"906",ParamColor("906Color",colorGrey40),ParamStyle("906Style",styleLine|styleThick));}
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

_SECTION_BEGIN("KP ScoreCard Histogram");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
Ctmpl = E_TSKPCOLORTMPL(Open,High,Low,Close,Volume);
total = 0;
total = total  + IIf(tskp_colortmplcnd0 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd1 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd2 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd3 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd4 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd5 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd6 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd7 > 0, 1, -1); 
total = total  + IIf(tskp_colortmplcnd8 > 0, 1, -1); 

Cutoff = 5;
for( i = 0; i < BarCount; i++ ) 
{
if( total[i] >= Cutoff  )
Color[i] = colorBlue;
else if(  total[i] <= -Cutoff  )
Color[i] = colorRed;
else
Color[i] = colorYellow;
}

PlotGrid(4,ParamColor("CutoffColor",colorCycle));
PlotGrid(-4,ParamColor("CutoffColor",colorCycle));
Plot(total,"ScoreCard",Color,ParamStyle("ScoreCardStyle",styleHistogram+styleThick,MAsk=maskHistogram));

if( Status("action") == actionCommentary ) 
{ 
printf(   "KPA900" +       NumToStr(tskp_colortmplcnd0) +  WriteIf(tskp_colortmplcnd0 > 0, " +++", " ---") );
printf( "\nAutoStop" +     NumToStr(tskp_colortmplcnd1) +  WriteIf(tskp_colortmplcnd1 > 0, " +++", " ---") );
printf( "\nHighlight" +    NumToStr(tskp_colortmplcnd2) +  WriteIf(tskp_colortmplcnd2 > 0, " +++", " ---") );
printf( "\nCombo" +        NumToStr(tskp_colortmplcnd3) +  WriteIf(tskp_colortmplcnd3 > 0, " +++", " ---") );
printf( "\nFast3" +        NumToStr(tskp_colortmplcnd4) +  WriteIf(tskp_colortmplcnd4 > 0, " +++", " ---") );
printf( "\nSTTB" +         NumToStr(tskp_colortmplcnd5) +  WriteIf(tskp_colortmplcnd5 > 0, " +++", " ---") );
printf( "\nTrigger/Stop" + NumToStr(tskp_colortmplcnd6) +  WriteIf(tskp_colortmplcnd6 > 0, " +++", " ---") );
printf( "\n115Split" +     NumToStr(tskp_colortmplcnd7) +  WriteIf(tskp_colortmplcnd7 > 0, " +++", " ---") );
printf( "\nMedium" +       NumToStr(tskp_colortmplcnd8) +  WriteIf(tskp_colortmplcnd8 > 0, " +++", " ---") );

printf(         WriteIf(tskp_colortmplcnd0 > 0, "+++", "---") + "KPA900" +       NumToStr(tskp_colortmplcnd0));
printf( "\n" +  WriteIf(tskp_colortmplcnd1 > 0, "+++", "---") + "AutoStop" +     NumToStr(tskp_colortmplcnd1) );
printf( "\n" +  WriteIf(tskp_colortmplcnd2 > 0, "+++", "---") + "Highlight" +    NumToStr(tskp_colortmplcnd2) );
printf( "\n" +  WriteIf(tskp_colortmplcnd3 > 0, "+++", "---") + "Combo" +        NumToStr(tskp_colortmplcnd3) );
printf( "\n" +  WriteIf(tskp_colortmplcnd4 > 0, "+++", "---") + "Fast3" +        NumToStr(tskp_colortmplcnd4));
printf( "\n" +  WriteIf(tskp_colortmplcnd5 > 0, "+++", "---") + "STTB" +         NumToStr(tskp_colortmplcnd5) );
printf( "\n" +  WriteIf(tskp_colortmplcnd6 > 0, "+++", "---") + "Trigger/Stop" + NumToStr(tskp_colortmplcnd6) );
printf( "\n" +  WriteIf(tskp_colortmplcnd7 > 0, "+++", "---") + "115Split" +     NumToStr(tskp_colortmplcnd7) );
printf( "\n" +  WriteIf(tskp_colortmplcnd8 > 0, "+++", "---") + "Medium" +       NumToStr(tskp_colortmplcnd8) );
}
_SECTION_END();

_SECTION_BEGIN("KP ShortTermTradeBias STTB");
SetChartBkColor(ParamColor("Panel Color",colorLightGrey));
SetChartBkGradientFill(ParamColor("Upper Chart",colorLightGrey),ParamColor("Lower Chart",colorLightGrey));
/*
// return both values
r[0] = mydll.call("E_GETRETURN",stateID,0);
r[1] = mydll.call("E_GETRETURN",stateID,1);
// r[2] = mydll.call("E_GETRETURN",stateID,2);
if( r[0] > 0 )
setBarBgColor(Color.blue);
else if( r[0] < 0 )
setBarBgColor(Color.red);
*/
// tskp_sttb1, tskp_sttb2,tskp_sttb3
dummy=E_TSKPSHORTTERMTRADEBIAS(High,Low,Close);
Color=IIf(tskp_sttb1>0,colorBlue,colorRed);
Disp1=ParamToggle("STTB2","Show|Hide",0);
if(Disp1){
Plot(tskp_sttb2,"STTB2",ParamColor("STTB2Color",colorCycle),ParamStyle("STTB2Style"));}
Plot(tskp_sttb1,"STTB1",Color,ParamStyle("Style",styleHistogram|styleThick,maskHistogram) ); 
Plot(0,"0",ParamColor("Zero Line",colorGrey50),styleLine);
Title =FullName();
_SECTION_END();

6 comments

1. yo3bl
over 13 years ago

Very Good . Waiting for next indicators . thank you very much . Lilian

over 13 years ago

Hi yo3bl,

This is all I got. There is no more.
9 indicators is not enough? :-)

3. yo3bl
over 13 years ago

Dear Ceurami ,
enough , thank you .
have a couple of days to take a look on the videos which you posted.
HNY .

4. yo3bl
over 13 years ago

Dear Ceurami ,
Could you please share KP SNAPBACK indicator?
and KPVS too.
Thank you .

6. carlvan
over 7 years ago

I revisited all those KP indicators and techniques. Thank you for sharing those codes on the indicators. Al right, here is the problem: I can only run those on 32-bit Amibroker which almost nobody uses anymore, everybody uses the 64-bit version. And as you probably know the kpami.dll and juril.dll links to download those only refer to 32-bit version. Do you know of any way to get the 64-bit version? Thanks again.

Leave Comment

Please login here to leave a comment.