Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);Ref(HHV(RS,250),-20)
Appendix A
343
Column D:Col. Name: RS-MA%Code:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);(RS-Mov(RS,120,E))/Mov(RS,120,E)∗ 100Column E:Col. Name: LRS(RS)Code:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);LinRegSlope(RS,20)Column F:Col. Name: CORRELCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);Correl(C,SEC2,130,0)FilterSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);RS>Mov(RS,120,E) AND ROC(Mov(C,25,E),2,%)>0 AND LinRegSlope(RS,20)>0AND Correl(C,SEC2,130,0)<.5 AND Stoch(100,3)<80AND RS>Ref(HHV(RS,250),-20)To close long positions you can either create another exploration and enter thefollowing code in the filter column or create an expert and drop it on each security.Sell explorationTo create the FUTURES sell exploration, go to The Explorer and choose the Newbutton and name it: Sell Relative Strength (Futures). Then enter the following codein the filter column. To explore for sell signals, open the Explorer (click on binocularicon), click on Options and load 500 records, then click explore and select the foldersin your hard drive with Commodity, Index FUTURES and International Indices. Besure to change the first line of the code to point to the appropriate folder on your harddrive where the S&P 500 data are located.Name: Sell Relative Strength (Futures)
344
Intermarket Trading Strategies
FilterSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);Cross(Mov(RS,90,E),RS) OR ROC(RS,3,%)<-.5Futures expert advisorTo create the Futures expert, go to the Expert advisor and choose the New expert.Click on symbols, and choose New and enter the following code and appropriategraphic symbols:Name: Buy Futures (Relative Strength)Graphic: Green Up arrowCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);RS>Mov(RS,120,E) AND ROC(Mov(C,25,E),2,%)>0 AND LinRegSlope(RS,20)>0AND Correl(C,SEC2,130,0)<.5 AND Stoch(100,3)<80AND RS>Ref(HHV(RS,250),-20)Name: Sell Futures (RS)Graphic: Red exit signCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);Cross(Mov(RS,90,E),RS) OR ROC(RS,3,%)<-.52 Test II ETF Relative StrengthMetaStock Code for Tradesim SimulationThis test can only be run with Tradesim v. 4.2 2 (a MetaStock plug-in) which can beobtained from http://www.compuvision.com.au/.Change the first line of the code to point to the appropriate folder on your harddrive where the S&P 500 data are located. Copy and paste the following code intocolumn A of MetaStock’s explorer and then click on options and load 2100 records.After running the MetaStock exploration open Tradesim and load the ETF file andfill in the following trade parameters:Initial trading capital: $500 000Maximum open positions: 30
Appendix A
345
Capital per trade: $30 000Transaction cost: $10Minimum trade size: $5000Volume filter: Limit position to a maximum of 20 % of the traded volume.SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);VFI:=Fml(“VFI”);entrytrigger:=RS>Mov(RS,120,E) AND ROC(Mov(C,25,E),2,%)>0 ANDLinRegSlope(RS,20)>0AND Correl(C,SEC2,130,0)<.5 AND Stoch(100,3)<80 AND Mov(VFI,25,E)>0;EXITTRIGGER:=Cross(Mov(RS,90,E),RS) OR ROC(RS,3,%)<-.5 OR Mov(VFI,25,E)<0;ExtFml(“TradeSim.Initialize”);ExtFml(“TradeSim.EnableDelayOfEntryByOneBar”);ExtFml(“TradeSim.EnableDelayOfAllExitsByOneBar”);ExtFml(“TradeSim.RecordTrades”,“ETF”,LONG,EntryTrigger,OPEN,0,EXITTRIGGER,OPEN,START);
MetaStock Exploration Code for the Relative Strength ETF SystemTo create the ETF exploration, go to The Explorer and choose the New button. Enterin the following code in the filter column. To explore for possible hits, open theExplorer (click on binocular icon), click on Options and load 500 records, then clickexplore and select the folder in your hard drive with the ETF data. Be sure to changethe first line of the code to point to the appropriate folder on your hard drive wherethe S&P 500 data are located.Note: Before running the exploration you should first create the VFI indicator.The code for this indicator is included in A6 above.Name: Buy ETFNotes: Displays ETF where the comparative relative strength (i.e. between the ETFand the S&P 500) crosses above its signal line. This was discussed in Mr Katsanos’book Intermarket Trading Strategies. Column A displays the close of each security,Column B the Relative Strength between the security and index, Column C theVFI, Column D the % difference between the Relative Strength and its movingaverage, Column E the value of the 20-day linear regression slope of the relativestrength and Column F the correlation between the security and the S&P 500. Thefilter does not rely on any of the column formulas so feel free to change the columnformula to calculate any of your favorite indicators.
346
Intermarket Trading Strategies
FilterSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);VFI:=Fml(“VFI”);RS>Mov(RS,120,E) AND ROC(Mov(C,25,E),2,%)>0 AND LinRegSlope(RS,20)>0AND Correl(C,SEC2,130,0)<.5 AND Stoch(100,3)<80 AND Mov(VFI,25,E)>0Column A:Col. Name: PriceCode: CColumn B:Col. Name: RSCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);RSColumn C:Col. Name: VFICode:Fml(“VFI”)Column D:Col. Name: RS-MA%Code:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);(RS-Mov(RS,120,E))/Mov(RS,120,E)∗ 100Column E:Col. Name: LRS(RS)Code:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);LinRegSlope(RS,20)Column F:Col. Name: CORRELCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);Correl(C,SEC2,130,0)To close long positions you can either create the following exploration or create anexpert and drop it on each security.
Appendix A
347
Sell explorationTo create the ETF sell exploration, go to The Explorer and choose the New buttonand name it: Sell Relative Strength (ETF). Then enter the following code in the filtercolumn. To explore for sell signals, open the Explorer (click on binocular icon),click on Options and load 500 records, then click explore and select the foldersin your hard drive with the ETF data. Be sure to change the first line of the codeto point to the appropriate folder on your hard drive where the S&P 500 data arelocated.Name: Sell ETFFilterSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);VFI:=Fml(“VFI”);Cross(Mov(RS,90,E),RS) OR ROC(RS,3,%)<-.5 OR Mov(VFI,25,E)<0
ETF Expert AdvisorTo create the ETF expert, go to the Expert advisor and choose the New expert. Clickon symbols, and choose New and enter the following code and appropriate graphicsymbols:Name: Buy ETFGraphic: Green Up arrowCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);VFI:=Fml(“VFI”);RS>Mov(RS,120,E) AND ROC(Mov(C,25,E),2,%)>0 AND LinRegSlope(RS,20)>0AND Correl(C,SEC2,130,0)<.5 AND Stoch(100,3)<80 AND Mov(VFI,25,E)>0Name: Sell ETFGraphic: Red exit signCode:SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);D3:=150;{DAYS FOR SMOOTH RS}RS:=Mov((C/SEC2),D3,E);VFI:=Fml(“VFI”);Cross(Mov(RS,90,E),RS) OR ROC(RS,3,%)<-.5 OR Mov(VFI,25,E)<0
348
Intermarket Trading Strategies
A.8 METASTOCK CODE FOR THE FOREX SYSTEMS DESCRIBEDIN CHAPTER 17Yen (USD/YEN) Daily Intermarket Volatilty System(Copyright Markos Katsanos 2008)To recreate the tests click on enhanced system tester, click on new system and type thebuy and sell code. Then to run the test, click on new simulation, next, add securities,select the yen (USD/JPY), select periodicity daily, click on next, select transactioncost $100 000. Click on more. . ., and fill in the exit commission = $13 points pertransaction (100 000 ∗ 0.015/average yen price during the test duration). Click ontrade execution, uncheck realistic market prices and select buy price and sell price atopen.You will need also to change the first line of the code to point to the appropriatefolder in your hard drive where the S&P 500 (SPX), 10-year Treasury yield (TNX)and dollar index (DXY) are located.LongSEC1:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);D1:=200; {REGRESSION DAYS} D2:=15;RS1:=ROC(C,D2,%);RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG:=(PRED-RS1); DIVERG:=Mov(DIVERG,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((DIS3-DISY),3,E);(HHV(IM,4)>70 AND IM<HHV(IM,4)-4 AND MOV(C,2,S)>MOV(C,10,S)AND (DIS>0 OR ROC(SEC1,1,%)>2) AND C>O)OR (HHV(DIS,4)>4 and DIS <HHV(DIS,4) AND CROSS(STOCH(5,3),20))OR (LLV(SDADX,3)<0.11 AND CROSS(C, BBandTop(C,20,S,1.8)) AND(DIS>0 OR SEC2>MOV(SEC2,20,S)))SellSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; {REGRESSION DAYS} D2:=15; {ROC DAYS}
Appendix A
349
RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG1:=(PRED-RS1); DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((DIS3-DISY),3,E);MA:=MOV(C,4,E)-MOV(C,4,E)∗ 1.2/100;CROSS(BBandBOT(C,10,S,2.5),C)OR (LLV(IM,4)<30 and IM >LLV(IM,4) AND MACD()<MOV(MACD(),7,E))OR (LLV(DIS,4)<-4 and DIS >LLV(DIS,4) AND CROSS(80,STOCH(5,3)))Sell shortSEC1:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; D2:=15; RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a; DIVERG1:=(PRED-RS1); DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((DIS3-DISY),3,E);(LLV(IM,4)<30 and IM >LLV(IM,4)+4 AND MOV(C,2,S)<MOV(C,10,S)AND (DIS<0 OR ROC(SEC1,1,%)<-2) AND C<O)OR (LLV(DIS,4)<-4 and DIS >LLV(DIS,4) AND CROSS(80,STOCH(5,3)))OR (LLV(SDADX,3)<.11 AND CROSS(BBandBOT(C,20,S,1.8),C) ANDDIS<0)Buy to coverSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; {REGRESSION DAYS} D2:=15; {ROC DAYS}
350
Intermarket Trading Strategies
RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG1:=(PRED-RS1);DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((DIS3-DISY),3,E);MA:=REF(MOV(C,4,E),-1)+MOV(C,4,E)∗ 1.2/100;CROSS(C, BBandTop(C,10,S,2.5))OR (HHV(IM,4)>70 AND IM<HHV(IM,4) AND MACD()>MOV(MACD(),9,E))OR (HHV(DIS,4)>4 and DIS <HHV(DIS,4) AND ((CROSS(C,MOV(C,10,S))AND SEC2>MOV(SEC2,20,S)) or CROSS(STOCH(5,3),20)))Yen Futures (GLOBEX:6J) Daily Intermarket Volatilty System(Copyright Markos Katsanos 2008)This is the inverse of the system above. To simulate futures trading with MetaStockyou will have to do a points only test and then multiply the trade results by the pointvalue which in the case of yen futures is 12 500 000.You will need also to change the first line of the code to point to the appropriatefolder in your hard drive where the S&P 500 (SPX), 10-year Treasury yield (TNX)and dollar index (DXY) are located.LongSEC1:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; D2:=15; RS1:=ROC(C,D2,%);RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG:=MOV((PRED-RS1),3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;
Appendix A
351
DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((-DIS3-DISY),3,E);(HHV(IM,4)>70 AND IM<HHV(IM,4)-4 AND MOV(C,2,S)>MOV(C,10,S)AND (DIS>0 OR ROC(SEC1,1,%)<-2) AND C>O)OR (LLV(SDADX,3)<0.11 AND CROSS(C, BBandTop(C,20,S,1.8)) ANDDIS>0)OR (HHV(DIS,4)>2 and DIS <HHV(DIS,4) AND ALERT(CROSS(STOCH(10,3),20),3) AND STOCH(10,3)>MOV(STOCH(10,3),4,S)AND ROC(SEC2,4,%)<0)SellSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; {REGRESSION DAYS} D2:=15; {ROC DAYS}RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG1:=(PRED-RS1); DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((-DIS3-DISY),3,E);CROSS(BBandBOT(C,10,S,2.5),C)OR (LLV(IM,4)<30 and IM >LLV(IM,4) AND MACD()<MOV(MACD(),9,E))OR (LLV(DIS,4)<-2 and DIS >LLV(DIS,4) AND (CROSS(80,STOCH(5,3)) ORSEC2>MOV(SEC2,20,S)))Sell shortSEC1:=Security(“C:\Metastock Data\REUTERSINDEX\.SPX”,C);SEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; D2:=15; RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a; DIVERG1:=(PRED-RS1); DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);
352
Intermarket Trading Strategies
DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((-DIS3-DISY),3,E);(LLV(IM,4)<30 and IM >LLV(IM,4)+4 AND MOV(C,2,S)<MOV(C,10,S)AND (DIS<0 OR ROC(SEC1,1,%)>2) AND C<O)OR (LLV(SDADX,3)<.11 AND CROSS(BBandBOT(C,20,S,1.8),C) AND(DIS<0 OR SEC2<MOV(SEC2,20,S)))OR (LLV(DIS,4)<-2 and DIS >LLV(DIS,4) AND ALERT(CROSS(80,STOCH(10,3)),3) AND STOCH(10,3)<MOV(STOCH(10,3),4,S) ANDROC(SEC2,4,%)>0)Buy to coverSEC2:=Security(“C:\Metastock Data\REUTERSINDEX\.DXY”,C);SEC3:=Security(“C:\Metastock Data\REUTERSINDEX\.TNX”,C);D1:=200; {REGRESSION DAYS} D2:=15; {ROC DAYS}RS1:=ROC(C,D2,%); RS2:=ROC(SEC2,D2,%);b:=Correl(RS1,RS2,D1,0)∗ Stdev(RS1,D1)/(Stdev(RS2,D1)+.001);a:=mov(RS1,D1,S)-b∗ MOV(RS2,D1,S);pred:=b∗ RS2+a;DIVERG1:=(PRED-RS1);DIVERG:=Mov(DIVERG1,3,E);IM:=(Mov(DIVERG - LLV(DIVERG,200), 3,S) ∗ 100)/(Mov(HHV(DIVERG,200) - LLV(DIVERG,200), 3,S));SDC:=Stdev(C,15)/Mov(C,15,S);SDADX:=SDC∗ ADX(15);DISY:=(C-Mov(C,10,E))/Mov(C,10,E)∗ 100;DIS3:=(SEC3-Mov(SEC3,10,E))/Mov(SEC3,10,E)∗ 100;DIS:=MOV((-DIS3-DISY),3,E);CROSS(C, BBandTop(C,10,S,2.5))OR (HHV(IM,4)>70 AND IM<HHV(IM,4) AND MACD()>MOV(MACD(),7,E))OR (HHV(DIS,4)>2 and DIS <HHV(DIS,4) AND CROSS(C,MOV(C,10,S))AND (CROSS(STOCH(5,3),20) OR SEC2<MOV(SEC2,20,S)))Yen (USD/YEN) Daily Intermarket Regression System(Copyright Markos Katsanos 2008)You can’t simulate actual forex