hi , i found this script on tradestation that looks really good for stops and entries. it is from tradestation.can someone help to convert it?thanks
{HBKeltnerbandesPGI: Bandes Plus Haut Plus Bas et moyenne sur intervalle donne (type supertrend de Seban) Type calcul= 1 moy arith sans seuil 2 moy arith avec seuil 3 moy expo sans seuil 4 moy expo avec seuil 5 moy pond sans seuil 6 moy pond avec seuil BY041206 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX} INPUTs: CorrGapJNouO(1); vars:Gap(0),GapJCumu(0),CC(C),HC(H),BC(L),OC(O); {Correction des gaps } if CorrGapJNouO=1 then begin if Date<>Date[1] then begin Gap=Gap[1]+C-C[1]; end; GapJCumu=Gap; end else GapJCumu=0; CC=C-GapJCumu;HC=H-GapJCumu;BC=L-GapJCumu;OC=L-GapJCumu; Var: HBKTypPrxCentr(1),HBKTypPrxSort(2),HBKintrvp(1),klargeurSup (2),klargeurInf(-2); Input: Klargeur(3), HBKLisp(20), ColorSup(DarkGreen), ColorInf(Red); KlargeurSup = Klargeur; KlargeurInf =-Klargeur; var: HBKPrxCentr(C),HBKPrxSort(C),HBKPlusH(0),HBKPlusB(0),HB (0),AmplitudVrGIntHBK(0), HBKAtr(0), HBKMoy(0),HBKH(0),HBKB(0),HBKHMoy(0),HBKBMoy (0),HBKtendance(0), HBKLisIntrvp(HBKLisp*HBKintrvp),Maxccant(HBKLisIntrvp); HBKPlusH=HighestFC(HC,HBKintrvp); HBKPlusB=LowestFC(BC,HBKintrvp); if HBKTypPrxCentr =1 then HBKPrxCentr=cc; if HBKTypPrxCentr =2 then HBKPrxCentr=(HBKPlusH+HBKPlusB) *0.5; if HBKTypPrxCentr =3 then HBKPrxCentr= (HBKPlusH+HBKPlusB+cc)/3; if HBKTypPrxCentr =4 then HBKPrxCentr= (HBKPlusH+HBKPlusB+cc+OC[HBKintrvp-1])*0.25; if HBKTypPrxCentr =5 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc [HBKintrvp])/3; if HBKTypPrxCentr =6 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc [HBKintrvp]+OC[HBKintrvp-1])*0.25; if HBKTypPrxSort =1 then HBKPrxSort=cc; if HBKTypPrxSort =2 then HBKPrxSort=(HBKPlusH+HBKPlusB)*0.5; if HBKTypPrxSort =3 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc)/3; if HBKTypPrxSort =4 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc+OC [HBKintrvp-1])*0.25; if HBKTypPrxSort =5 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc [HBKintrvp])/3; if HBKTypPrxSort =6 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc [HBKintrvp]+OC[HBKintrvp-1])*0.25; AmplitudVrGIntHBK=(maxlist(HBKPlusH,CC[HBKintrvp])- minlist(HBKPlusB,CC[HBKintrvp]))*0.5; Var:typeCalcul(6),GrafInfOuSup(1); if HBKLisp>1 then begin if typeCalcul=1 then begin HBKMoy=average (HBKPrxCentr,HBKLisIntrvp); HBKAtr=average (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr; HBKBMoy=HBkmoy+klargeurInf*HBKAtr; end; if typeCalcul=2 then begin HBKMoy=average (HBKPrxCentr,HBKLisIntrvp); HBKAtr=average (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr;if HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]); HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;if HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]); end; if typeCalcul=3 then begin HBKMoy=xaverage (HBKPrxCentr,HBKLisIntrvp); HBKAtr=xaverage (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr; HBKBMoy=HBkmoy+klargeurInf*HBKAtr; end; if typeCalcul=4 then begin HBKMoy=Xaverage (HBKPrxCentr,HBKLisIntrvp); HBKAtr=Xaverage (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr;if HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]); HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;if HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]); end; if typeCalcul=5 then begin HBKMoy=Waverage (HBKPrxCentr,HBKLisIntrvp); HBKAtr=Waverage (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr; HBKBMoy=HBkmoy+klargeurInf*HBKAtr; end; if typeCalcul=6 then begin HBKMoy=average (HBKPrxCentr,HBKLisIntrvp); HBKAtr=Waverage (AmplitudVrGIntHBK,HBKLisIntrvp); HBKHMoy=HBkmoy+klargeurSup*HBKAtr;if HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]); HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;if HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]); end; end else begin HBKH=HBKPrxCentr+klargeurSup*AmplitudVrGIntHBK; HBKB=HBKPrxCentr+klargeurInf*AmplitudVrGIntHBK; HBKMoy=HBKPrxCentr; HBKHMoy=HBKH; HBKBMoy=HBKB; end; if HBKPrxSort>HBKHMoy then HBKtendance=1; if HBKPrxSort<HBKBMoy then HBKtendance=-1; if GrafInfouSup=1 then begin Plot1(HBKMoy+GapJcumu,"Moy HB"); if klargeurSup>0 then begin Plot2(HBKHMoy+GapJcumu,"Bande Sup"); if HBKtendance>0 then setplotcolor (3,Colorsup); end; if klargeuriNF<0 then begin if HBKtendance<0 then setplotcolor (2,colorinf); end; Plot3(HBKBMoy+GapJcumu,"Bande Inf"); if GrafInfouSup=3 then Plot4(oC,"Ouverture",yellow); end else begin if HBKtendance>0 then begin Plot2(HBKHMoy- HBKMoy,"Bande Sup"); setplotcolor (2,BLACK); end; if HBKtendance<0 then begin Plot2(HBKBMoy- HBKMoy,"Bande Sup"); setplotcolor(2,red); end; pLOT1(0,"Moy HB",blue); if GrafInfouSup=2 then Plot4(oC-HBKMoy,"Ouverture",yellow);