;nybvt.ini(revised)
;by Don Bell, 06/16/2003

[Expression]

;NYBVT.ini.from ..BThrust.ini..3/20/02..and..06/10/03..dab..

;signals based on ny up vol thrust signal with delay = 0

;;;;;;Print(Ema($tvol, 10)/1e6, "$tvol Ema10\n\n")



;;manual iterate to find $uvol/$tvol ratio reqd for buys an sells.

;;     $uvol = Edit(Shift($uvol, -1), 12/31/05,    446     *1e6)

;;     $tvol = Edit(Shift($tvol, -1), 12/31/05,    1463    *1e6)

;create ny volume thrust indicator.
            
VT = 100*Ema($uvol / $tvol, 10)

;create a signal that buys at VT = 57.6 and sells at 45.8 or 47.7

vthrust.Buy = Signal(vt -  57.6)    ;OK to 57.5                  
vthrust.Sell = Signal(vt - 45.8)    ;Best 45.8 to 46.2
;;vthrust.Sell = Signal(vt - 47.7)    ;Lowest Mdd

vthrust = Stretch(vthrust, 8)       ;1 to 8

WriteFile(vthrust, NYVT0, "NY VT Signal")
;;WriteFile(Signal(Shift(Vector(nyvt0), -1)), NYVT00)
WriteFile(vt, NYVT,"NY VThrust")

;calculate  upvol/totvol for buy and sell signals

uvBuy =   100*(5.5 * (.576 - VT/100) + VT/100) 
uvSell =  100*(5.5 * (.458 - VT/100) + VT/100)   ;5.56
uvSellL = 100*(5.5 * (.477 - VT/100) + VT/100)

Print(uvBuy, "UpV/TotV reqd for Buy\n", 
      uvSellL, "UpV/TotV reqd for Low Mdd Sell\n",
      uvSell,  "UpV/TotV reqd for Best Ann Sell\n\n",4)


Print($uvol/1e6, "NY UpVol\n",
      $tvol/1e6, "NY TotVol\n",
      100*$uvol/$tvol, "NY UpVol/TotVol\n",
      vt, "NY VThrust\nBuy 57.6up\nSell 45.8 or 47.7dn")

Print(vthrust, "Last NYVT0 Signal")


[SignalPairTrade]

Delay = 0
Signal = NYVT0
;Signal = NYBT0
;Fund =   VLE-I
Fund =  DFSCX
;Fund =  PRSVX
;Fund = SHSTX
;Fund = HRTVX
;Fund = GABAX
;Fund = PENNX
;Fund = HWSIX
;Fund = GSSMX
;Fund = GASVX
Index = PTLDX
;Index = Zero
HoldMinDays = 1   ;Iterate(1..50) ;10
StartDate = 9/1/88
;;StartDate = 6/10/00
FnuFile = f

[Expression]

Print(-100*(Max(f,Sum(f/f)) - f)/Max(f,Sum(f/f)), "Current %DD",
100*Roc(f,1), "1d %Chg",
100*Roc(f,5), "5d %Chg",
100*Roc(f,21), "1mo %Chg",
100*Roc(f,42), "2mo %Chg",
100*Roc(f,63), "3mo %Chg",
100*Roc(f,126), "6mo %Chg",
100*Roc(f,189), "9mo %Chg",
100*Roc(f,252), "1yr Ann",
100*(Pow((Roc(f,504) + 1), 1/2) - 1), "2yr Ann",
100*(Pow((Roc(f,756) + 1), 1/3) - 1), "3yr Ann",
100*(Pow((Roc(f,1260) + 1), 1/5) - 1), "5yr Ann",
100*(Pow((Roc(f,2016) + 1), 1/8) - 1), "8yr Ann",
100*(Pow((Roc(f,3024) + 1), 1/12) - 1), "12yr Ann",
100*(Pow((Roc(f,3704) + 1), 1/14.7) - 1), "14.7yr Ann\n\n")

;[SignalPairTrade]
;Delay = 0
;Signal = NYBT0
;Fund = DFSCX
;Index = PTLDX
;StartDate = 9/1/88
;HistoryDays = 1

;------------------------------------------------------------------------
[Expression]

;create a combo signal that Buys when Either NYVT0 Or NYBT0 are on Buy
;and Sells when Both NYVT0 And NYBT0 are on Sell.
;in other words: First In, Last Out.

;Note: NYBT0.sig comes from nybt0.ini and shold be run first. 

combo.Buy =  NYBT0 Or NYVT0
combo.Sell = NYBT0 And NYVT0

WriteFile(combo, NYBVT, "NYBVT Signal")
WriteFile(Signal(Shift(Vector(nybvt), -1)), NYBVT0, "NYBVT0 Signal")

Print(nybvt, "NYBVT Signal")

[SignalPairTrade]
Delay = 0
Signal = NYBVT         ;Ann      Mdd    9/1/88 to 6/10/03
Fund = DFSCX           ;18.8%    3.8%
;Fund = PRCGX          ;19.1     2.5
;Fund = HRTVX          ;17.0     3.6
;Fund = HWSIX          ;16.5     4.9
;Fund = PENNX          ;14.9     3.8
;Fund = PRSVX          ;14.6     3.9
;Fund = FAMVX          ;13.2     3.9
;Fund = LBNDX          ;11.4     1.9
;Fund = GASVX          ;         3.9

Index = PTLDX          ;or any st bond or mmkt fund

StartDate = 9/1/88     ;14.7yr lookback
;;StartDate = 6/10/00  ;3yr    lookback
HoldMinDays = 1
FnuFile = f

[Expression]
Print(-100*(Max(f,Sum(f/f)) - f)/Max(f,Sum(f/f)), "Current %DD",
100*Roc(f,1), "1d %Chg",
100*Roc(f,5), "5d %Chg",
100*Roc(f,21), "1mo %Chg",
100*Roc(f,42), "2mo %Chg",
100*Roc(f,63), "3mo %Chg",
100*Roc(f,126), "6mo %Chg",
100*Roc(f,189), "9mo %Chg",
100*Roc(f,252), "1yr Ann",
100*(Pow((Roc(f,504) + 1), 1/2) - 1), "2yr Ann",
100*(Pow((Roc(f,756) + 1), 1/3) - 1), "3yr Ann",
100*(Pow((Roc(f,1260) + 1), 1/5) - 1), "5yr Ann",
100*(Pow((Roc(f,2016) + 1), 1/8) - 1), "8yr Ann",
100*(Pow((Roc(f,3024) + 1), 1/12) - 1), "12yr Ann",
100*(Pow((Roc(f,3704) + 1), 1/14.7) - 1), "14.7yr Ann\n\n")

Print(nybt0, " NYBT0 Signal",
      nyvt0, " NYVT0 Signal",
      nybvt, " NYBVT Signal",
      nsbt0, " NSBT0 Signal",
      btcomb,"BTComb Signal")

;more good funds

;avalx,mmeyx,rcmcx,brsix,obmcx,tcsvx,rysex,rhjsx,mcvyx,sfscx,rylpx,
;frmcx,ryotx,fbrsx,mofqx,rcbsx,tsvox,mxcax,quktx,gssmx,svpix,esvax,
;rspfx,lseax,waigx,smfax,dabax,risix,tavix,laiax,finex,zzsmx...