Risk On Risk Off Trading Strategy (Amibroker Code)
You find the original article by clicking here.
Trading rules in plain English
- We make a risk on risk off “index” of junk bonds (JNK), gold (GLD), Brazilian stocks (EWZ), Swiss Francs (FXF), Japanese Yen (FXY), and Bitcoin (BTC).
- When at least three of the mentioned assets are over its 200-day moving average, we are in “risk on” mode.
- When less than three assets are above its 200-day moving average, the mode is “risk off”.
Amibroker code
setOption("initialEquity",100000);
Leverage=1 ;
SetOption("accountmargin",100/leverage);
SetPositionSize(99.75*leverage,spsPercentOfEquity);
setOption("MaxOpenPositions",1);
setOption("holdminbars",1);
SetTradeDelays( 0, 0, 0, 0 );
Fremmed=Foreign("JNK","close",fixup=1);
Fremmed2=Foreign("GLD","close",fixup=1);
//Fremmed3=Foreign("EWZ","close",fixup=1);
Fremmed4=Foreign("SPY","close",fixup=1);
//Fremmed5=Foreign("FXF","close",fixup=1);
//Fremmed6=Foreign("FXY","close",fixup=1);
Fremmed7=Foreign("EEM","close",fixup=1);
Fremmed8=Foreign("BTC-USD","close",fixup=1);
fremmedjnk = IIf(fremmed>MA(fremmed,oddis),1,0);
fremmedgld = IIf(fremmed2>MA(fremmed2,oddis),1,0);
//fremmedewz = IIf(fremmed3>MA(fremmed3,oddis),1,0);
fremmedspy = IIf(fremmed4>MA(fremmed4,oddis),1,0);
//fremmedfxf = IIf(fremmed5>MA(fremmed5,oddis),1,0);
//fremmedfxy = IIf(fremmed6>MA(fremmed6,oddis),1,0);
fremmedeem = IIf(fremmed7>MA(fremmed7,oddis),1,0);
fremmedbtc = IIf(fremmed8>MA(fremmed8,oddis),1,0);
AllAdded=sum(fremmedjnk+fremmedgld+fremmedspy+fremmedeem+fremmedbtc,1);
Plot(AllAdded,"Test Sector",colorRed,styleLine);
Buy = AllAdded>=3 ;
BuyPrice=Close;
Sell = AllAdded<2 ;
SellPrice=Close;
