[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Three Day Modification to CandleStochastics



PureBytes Links

Trading Reference Links

Hi,

I had the same thought - just made it a little easier
on the typing and you can play with the period: 

tolDays = 3;
...
/* KUP */
KUP=EMA((H+L+C)/3,10)+EMA(H-L,10);
KDOWN=EMA((H+L+C)/3,10)-EMA(H-L,10);
kupBuy = iif(barsSince(CROSS(C,KDOWN) ) < tolDays, 1, 0);
kupSell = iif(barsSince(CROSS(KUP,C) ) < tolDays, 1, 0);
...

Thanks to Thierry for sharing.

Cheers Ralf

--- In amibroker@xxxx, fesnay@xxxx wrote:
> Modification to "Against All Odds" - Written by Thierry HUITEL
> Based on Jim Varney's work - - CANDLESTOCHASTICS - 
> 
> Concept - The modification follows the reasoning that some signals 
> occur earlier than others. The current program finds all occurances
> for any ONE day. My modification looks over a three day span - 
> today, yesterday, and the day before that. It uses nested 
> conditional "iif" statements, and if any one of the three days 
comes 
> up with a signal, this returns a "true" and is recorded in the 
> results.
> 
> Cut and paste the following two sections that are the modifications 
> into the corresponding segments of the CANDLESTOCHASTICS explore 
> coding. Take care to completely overwrite everything 
from "/*number 
> of buy signals - - - " thru "somme2 = "
> 
> Comments, changes, or further ideas welcome !
> /*number of buy signals --- give weight to your favorite ones with 
a 
> coefficient. */
> PL = iif(PL== 1,1,iif(ref(PL,-1)== 1,1,iif(ref(PL,-2)== 1,1,0))); 
> MDS = iif(MDS== 1,1,iif(ref(MDS,-1)== 1,1,iif(ref(MDS,-2)== 
1,1,0))); 
> HAM = iif(HAM== 1,1,iif(ref(HAM,-1)== 1,1,iif(ref(HAM,-2)== 
1,1,0))); 
> BLE = iif(BLE== 1,1,iif(ref(BLE,-1)== 1,1,iif(ref(BLE,-2)== 
1,1,0))); 
> tdreiBuy = iif(tdreiBuy== 1,1,iif(ref(tdreiBuy,-1)== 1,1,iif(ref
> (tdreiBuy,-2)== 1,1,0))); 
> kupBuy = iif(kupBuy== 1,1,iif(ref(kupBuy,-1)== 1,1,iif(ref(kupBuy,-
2)
> == 1,1,0))); 
> rsiBuy = iif(rsiBuy== 1,1,iif(ref(rsiBuy,-1)== 1,1,iif(ref(rsiBuy,-
2)
> == 1,1,0))); 
> mfibuy = iif(mfibuy==1,1,iif(ref(mfibuy,-1)== 1,1,iif(ref(mfibuy,-2)
> == 1,1,0))); 
> sto2BuyL = iif(sto2Buy== 1,1,iif(ref(sto2Buy,-1)== 1,1,iif(ref
> (sto2Buy,-2)== 1,1,0))); 
> divBuy = iif(divBuy== 1,1,iif(ref(divBuy,-1)== 1,1,iif(ref(divBuy,-
2)
> == 1,1,0))); 
> kstBuy = iif(kstBuy== 1,1,iif(ref(kstBuy,-1)== 1,1,iif(ref(kstBuy,-
2)
> == 1,1,0))); 
> copBuy = iif(copBuy== 1,1,iif(ref(copBuy,-1)== 1,1,iif(ref(copBuy,-
2)
> == 1,1,0))); 
> smashBuy = iif(smashBuy== 1,1,iif(ref(smashBuy,-1)== 1,1,iif(ref
> (smashBuy,-2)== 1,1,0))); 
> chkBuy = iif(chkBuy== 1,1,iif(ref(chkBuy,-1)== 1,1,iif(ref(chkBuy,-
2)
> == 1,1,0))); 
> 
> somme= PL + MDS + HAM + BLE + tdreiBuy + kupBuy + rsiBuy + 
(2*mfibuy) 
> + sto2Buy + (2*divBuy) + kstBuy + copBuy + (2*smashBuy) + chkBuy; 
> 
> 
> /*number of sell signals. */
> BRE = iif(BRE== 1,1,iif(ref(BRE,-1)== 1,1,iif(ref(BRE,-2)== 
1,1,0))); 
> DCC = iif(DCC== 1,1,iif(ref(DCC,-1)== 1,1,iif(ref(DCC,-2)== 
1,1,0))); 
> EDS = iif(EDS== 1,1,iif(ref(EDS,-1)== 1,1,iif(ref(EDS,-2)== 
1,1,0))); 
> tdreiSell = iif(tdreiSell== 1,1,iif(ref(tdreiSell,-1)== 1,1,iif(ref
> (tdreiSell,-2)== 1,1,0))); 
> kupSell = iif(kupSell== 1,1,iif(ref(kupSell,-1)== 1,1,iif(ref
> (kupSell,-2)== 1,1,0))); 
> rsiSell = iif(rsiSell== 1,1,iif(ref(rsiSell,-1)== 1,1,iif(ref
> (rsiSell,-2)== 1,1,0))); 
> mfiSell = iif(mfiSell== 1,1,iif(ref(mfiSell,-1)== 1,1,iif(ref
> (mfiSell,-2)== 1,1,0))); 
> sto2Sell = iif(sto2Sell== 1,1,iif(ref(sto2Sell,-1)== 1,1,iif(ref
> (sto2Sell,-2)== 1,1,0))); 
> divSell = iif(divSell== 1,1,iif(ref(divSell,-1)== 1,1,iif(ref
> (divSell,-2)== 1,1,0))); 
> kstSell = iif(kstSell== 1,1,iif(ref(kstSell,-1)== 1,1,iif(ref
> (kstSell,-2)== 1,1,0))); 
> smashSell = iif(smashSell == 1,1,iif(ref(smashSell ,-1)== 1,1,iif
(ref
> (smashSell ,-2)== 1,1,0))); 
> chkSell = iif(chkSell== 1,1,iif(ref(chkSell,-1)== 1,1,iif(ref
> (chkSell,-2)== 1,1,0))); 
> 
> somme2 = BRE + DCC + EDS + tdreiSell + kupSell + rsiSell + mfiSell 
+ 
> sto2Sell + divSell + divSell + kstSell + smashSell + chkSell;
> 
> Frank