kinda interesting
Attached Image
Struggling Russians Turn to Day-Trading to Pay the Bills 21 replies
Canadian T-bills question 2 replies
National Debt, T Bills, Bonds 0 replies
Dislikedfor example, a basic signal that can appear on 4 timeframes within a certain period of each other rather than a complex signal appearing on one timeframeIgnored
//@version=5
indicator(title="Corr Div Signals", shorttitle="Corr Div Signals", overlay=true, scale=scale.none, max_bars_back = 500)
// Calculated on 2024-04-17
// Timeframe D1
// Shift -30
// Correlation Period 200
// Correlation Threshold 0.65:0.98
// Drop Overnight False
src = 0.0
c = color.rgb(64, 123, 251, 69)
linewidth = 2
transp = 97
ema = 1
max_bars_back(time, 500)
normalize(src, lookBack) =>
min_val = ta.lowest(src, lookBack)
max_val = ta.highest(src, lookBack)
normalized = (src - min_val) / (max_val - min_val)
normalized
US10Y_price = 4.26
CL_price = 82
NG_price = 1.8
HG_price = 24.5
SI_price = 4
GC_price = 2178
EURUSD_price = 1.0829
USDJPY_price = 151.58
US10Y = request.security('US10Y', timeframe.period, close)
CL = request.security('CL1!', timeframe.period, close)
// NG = request.security('NG1!', timeframe.period, close)
// HG = request.security('HG1!', timeframe.period, close)
// SI = request.security('SI1!', timeframe.period, close)
// GC = request.security('GC1!', timeframe.period, close)
EURUSDx = request.security('EURUSD', timeframe.period, close)
USDJPYx = request.security('USDJPY', timeframe.period, close)
// realYields = CL/CL_price + NG/NG_price + HG/HG_price - 3*US10Y/US10Y_price
realYields = CL/CL_price - US10Y/US10Y_price
USDStrength = USDJPYx/USDJPY_price - EURUSDx/EURUSD_price
bias = realYields + USDStrength*50 // An even weight would be more like 100 but I think real yields may be more important
//NZDCAD correlated instruments: 14
//GBPCAD correlated instruments: 8
//GBPCHF correlated instruments: 14
//EURGBP correlated instruments: 14
//AUDCAD correlated instruments: 14
//NZDJPY correlated instruments: 12
//CHFJPY correlated instruments: 13
//CADJPY correlated instruments: 14
//CADCHF correlated instruments: 13
//EURNZD correlated instruments: 12
//AUDCHF correlated instruments: 7
//AUDJPY correlated instruments: 13
//EURJPY correlated instruments: 14
//GBPJPY correlated instruments: 13
//GBPUSD correlated instruments: 14
//AUDUSD correlated instruments: 14
//NZDUSD correlated instruments: 14
//USDJPY correlated instruments: 14
//EURCHF correlated instruments: 14
//EURUSD correlated instruments: 15
//GBPNZD correlated instruments: 5
//USDCHF correlated instruments: 13
//USDCAD correlated instruments: 12
//XAUUSD correlated instruments: 10
NZDCAD0 = request.security('(NOKSEK/0.99134)*-4+(XBRUSD/87.08)*-4+(XLE/93.91)*-3+(GBPSEK/13.63826)*-2+(AUDJPY/99.299)*2+(URA/28.94)*2+(EURJPY/164.606)*2+(EURCAD/1.4653)*1+(EURHKD/8.33545)*1+(AUDUSD/0.64209)*1', timeframe.period, close)
NZDCAD1 = request.security('(CHFSGD/1.493)*1+(USDJPY/154.649)*1+(LQD/104.84)*1+(MOO/70.48)*-1', timeframe.period, close)
NZDCAD = ta.ema((NZDCAD0+NZDCAD1) / 14 * 0.81251, ema)
src := syminfo.ticker=='NZDCAD' ? NZDCAD : src
// GBPCAD0 = request.security('(USDPLN/4.07289)*-4+(EURPLN/4.3355)*-2+(GBPDKK/8.71762)*1+(EURHKD/8.33545)*1+(MJ/3.78)*-1+(EPHE/25.09)*1+(USDCNH/7.25012)*1+(GBPNZD/2.10695)*1', timeframe.period, close)
// GBPCAD = ta.ema((GBPCAD0) / 8 * 1.71209, ema)
// src := syminfo.ticker=='GBPCAD' ? GBPCAD : src
GBPCHF0 = request.security('(XNGUSD/1.704)*-6+(DBA/25.89)*4+(EWZ/30.14)*-3+(GBPJPY/192.328)*3+(XLP/73.76)*2+(EURNOK/11.76151)*1+(NOKJPY/13.981)*1+(EEM/39.86)*1+(JP225/37733.08)*1+(USDMXN/17.0684)*-1', timeframe.period, close)
GBPCHF1 = request.security('(USDPLN/4.07289)*1+(NZDJPY/91.261)*-1+(SEKJPY/14.092)*-1+(GBPSEK/13.63826)*1', timeframe.period, close)
GBPCHF = ta.ema((GBPCHF0+GBPCHF1) / 14 * 1.13461, ema)
src := syminfo.ticker=='GBPCHF' ? GBPCHF : src
EURGBP0 = request.security('(XLI/120.66)*-4+(NOKJPY/13.981)*-4+(XLP/73.76)*-3+(USDMXN/17.0684)*3+(EURPLN/4.3355)*2+(FXI/24.03)*2+(EURNOK/11.76151)*2+(EURZAR/20.36354)*-2+(EEM/39.86)*1+(GBPDKK/8.71762)*-1', timeframe.period, close)
EURGBP1 = request.security('(URA/28.94)*1+(XLU/64.48)*1+(USDJPY/154.649)*1+(GBPJPY/192.328)*-1', timeframe.period, close)
EURGBP = ta.ema((EURGBP0+EURGBP1) / 14 * 0.85583, ema)
src := syminfo.ticker=='EURGBP' ? EURGBP : src
// AUDCAD0 = request.security('(NOKSEK/0.99134)*-9+(XBRUSD/87.08)*-4+(CADCHF/0.66267)*1+(EURCHF/0.97108)*1+(EURCAD/1.4653)*1+(AUDUSD/0.64209)*1+(AUDJPY/99.299)*1+(CHFSGD/1.493)*1+(NZDCAD/0.81251)*1+(GBPSGD/1.69409)*1', timeframe.period, close)
// AUDCAD1 = request.security('(USDJPY/154.649)*1+(URA/28.94)*1+(GBPUSD/1.24365)*1+(EURJPY/164.606)*1', timeframe.period, close)
// AUDCAD = ta.ema((AUDCAD0+AUDCAD1) / 14 * 0.88394, ema)
// src := syminfo.ticker=='AUDCAD' ? AUDCAD : src
// NZDJPY0 = request.security('(MOO/70.48)*-5+(URA/28.94)*3+(UNG/14.36)*-3+(EWW/64.86)*3+(FXI/24.03)*-2+(XLI/120.66)*2+(USDCZK/23.7311)*2+(GBPSEK/13.63826)*-2+(IT40/33708.2)*1+(MidDE50/26234.0)*-1', timeframe.period, close)
// NZDJPY1 = request.security('(USDMXN/17.0684)*-1+(MJ/3.78)*1', timeframe.period, close)
// NZDJPY = ta.ema((NZDJPY0+NZDJPY1) / 12 * 91.261, ema)
// src := syminfo.ticker=='NZDJPY' ? NZDJPY : src
CHFJPY0 = request.security('(URA/28.94)*4+(MOO/70.48)*-4+(FXI/24.03)*-3+(LQD/104.84)*2+(XLU/64.48)*-2+(EWW/64.86)*2+(XPDUSD/1022.37)*-2+(UNG/14.36)*-1+(IT40/33708.2)*1+(MidDE50/26234.0)*-1', timeframe.period, close)
CHFJPY1 = request.security('(USDCZK/23.7311)*1+(USDSEK/10.9657)*-1+(XAUEUR/2234.79)*1', timeframe.period, close)
CHFJPY = ta.ema((CHFJPY0+CHFJPY1) / 13 * 169.498, ema)
src := syminfo.ticker=='CHFJPY' ? CHFJPY : src
// CADJPY0 = request.security('(USDCZK/23.7311)*5+(XNGUSD/1.704)*-3+(MJ/3.78)*3+(USDTHB/36.788)*2+(IT40/33708.2)*2+(MidDE50/26234.0)*-2+(USDMXN/17.0684)*-2+(JP225/37733.08)*2+(USDZAR/19.14448)*-1+(XLI/120.66)*1', timeframe.period, close)
// CADJPY1 = request.security('(EWY/61.79)*-1+(EURPLN/4.3355)*-1+(EURHKD/8.33545)*-1+(USDSEK/10.9657)*-1', timeframe.period, close)
// CADJPY = ta.ema((CADJPY0+CADJPY1) / 14 * 112.329, ema)
// src := syminfo.ticker=='CADJPY' ? CADJPY : src
CADCHF0 = request.security('(XLE/93.91)*3+(GBPCHF/1.13461)*3+(EWZ/30.14)*-3+(AUDCHF/0.5858)*2+(AUDCAD/0.88394)*-2+(NZDCAD/0.81251)*-2+(DBA/25.89)*2+(MJ/3.78)*2+(SEKJPY/14.092)*-2+(USDSEK/10.9657)*1', timeframe.period, close)
CADCHF1 = request.security('(XNGUSD/1.704)*-1+(NZDCHF/0.5384)*-1+(AUDJPY/99.299)*-1', timeframe.period, close)
CADCHF = ta.ema((CADCHF0+CADCHF1) / 13 * 0.66267, ema)
src := syminfo.ticker=='CADCHF' ? CADCHF : src
EURNZD0 = request.security('(URA/28.94)*-4+(CHINA50/12280.63)*2+(EWZ/30.14)*-2+(UK100/7859.0)*-1+(DBA/25.89)*1+(FXI/24.03)*1+(EEM/39.86)*1+(LQD/104.84)*-1+(XLP/73.76)*1+(CADJPY/112.329)*1', timeframe.period, close)
EURNZD1 = request.security('(XLE/93.91)*1+(SGDJPY/113.516)*1', timeframe.period, close)
EURNZD = ta.ema((EURNZD0+EURNZD1) / 12 * 1.80331, ema)
src := syminfo.ticker=='EURNZD' ? EURNZD : src
AUDCHF0 = request.security('(DBA/25.89)*5+(XNGUSD/1.704)*-3+(EURNOK/11.76151)*1+(GBPSEK/13.63826)*-1+(USDNOK/11.04975)*1+(EURZAR/20.36354)*-1+(USDMXN/17.0684)*-1', timeframe.period, close)
AUDCHF = ta.ema((AUDCHF0) / 7 * 0.5858, ema)
src := syminfo.ticker=='AUDCHF' ? AUDCHF : src
AUDJPY0 = request.security('(MOO/70.48)*-5+(UNG/14.36)*-3+(NOKSEK/0.99134)*-2+(EWW/64.86)*2+(URA/28.94)*2+(IT40/33708.2)*2+(XLI/120.66)*2+(NZDJPY/91.261)*2+(USDCZK/23.7311)*1+(USDZAR/19.14448)*-1', timeframe.period, close)
AUDJPY1 = request.security('(CADCHF/0.66267)*1+(MidDE50/26234.0)*-1+(EURNOK/11.76151)*-1', timeframe.period, close)
AUDJPY = ta.ema((AUDJPY0+AUDJPY1) / 13 * 99.299, ema)
src := syminfo.ticker=='AUDJPY' ? AUDJPY : src
// EURJPY0 = request.security('(USDCZK/23.7311)*6+(IT40/33708.2)*2+(MidDE50/26234.0)*-2+(CADJPY/112.329)*2+(GBPSEK/13.63826)*-2+(JP225/37733.08)*2+(USDZAR/19.14448)*-1+(XLI/120.66)*1+(EWY/61.79)*-1+(SEKJPY/14.092)*-1', timeframe.period, close)
// EURJPY1 = request.security('(USDMXN/17.0684)*-1+(XNGUSD/1.704)*-1+(DBA/25.89)*1+(USDSEK/10.9657)*-1', timeframe.period, close)
// EURJPY = ta.ema((EURJPY0+EURJPY1) / 14 * 164.606, ema)
// src := syminfo.ticker=='EURJPY' ? EURJPY : src
GBPJPY0 = request.security('(UNG/14.36)*-4+(XLI/120.66)*4+(LQD/104.84)*-2+(IT40/33708.2)*2+(NZDJPY/91.261)*2+(URA/28.94)*1+(EWW/64.86)*1+(AUS200/7576.3)*1+(MidDE50/26234.0)*-1+(EURNOK/11.76151)*-1', timeframe.period, close)
GBPJPY1 = request.security('(ICMARKETS:ES35/10718.3)*1+(USDCZK/23.7311)*1+(USDMXN/17.0684)*-1', timeframe.period, close)
GBPJPY = ta.ema((GBPJPY0+GBPJPY1) / 13 * 192.328, ema)
src := syminfo.ticker=='GBPJPY' ? GBPJPY : src
GBPUSD0 = request.security('(XBRUSD/87.08)*-5+(EWW/64.86)*4+(USDCNH/7.25012)*-3+(XLE/93.91)*-3+(NZDCAD/0.81251)*3+(USDPLN/4.07289)*-3+(XLP/73.76)*3+(XLU/64.48)*2+(GBPDKK/8.71762)*2+(USDHUF/370.211)*-2', timeframe.period, close)
GBPUSD1 = request.security('(EURDKK/7.46057)*-1+(FXI/24.03)*1+(EURNZD/1.80331)*1+(CADJPY/112.329)*-1', timeframe.period, close)
GBPUSD = ta.ema((GBPUSD0+GBPUSD1) / 14 * 1.24365, ema)
src := syminfo.ticker=='GBPUSD' ? GBPUSD : src
AUDUSD0 = request.security('(NZDCAD/0.81251)*5+(AUDCAD/0.88394)*5+(XBRUSD/87.08)*-4+(USDCNH/7.25012)*-3+(USDSGD/1.3622)*-3+(XLU/64.48)*2+(XLE/93.91)*-2+(EURDKK/7.46057)*-2+(USDHKD/7.83131)*-2+(CADCHF/0.66267)*-2', timeframe.period, close)
AUDUSD1 = request.security('(AUDJPY/99.299)*2+(USDCAD/1.37673)*1+(FXI/24.03)*1+(CHFSGD/1.493)*1', timeframe.period, close)
AUDUSD = ta.ema((AUDUSD0+AUDUSD1) / 14 * 0.64209, ema)
src := syminfo.ticker=='AUDUSD' ? AUDUSD : src
NZDUSD0 = request.security('(XBRUSD/87.08)*-5+(NZDCAD/0.81251)*4+(XLE/93.91)*-4+(URA/28.94)*3+(USDCNH/7.25012)*-2+(XLU/64.48)*2+(EWZ/30.14)*2+(USDCAD/1.37673)*1+(EURDKK/7.46057)*-1+(USDHUF/370.211)*-1', timeframe.period, close)
NZDUSD1 = request.security('(FXI/24.03)*1+(USDHKD/7.83131)*-1+(CADCHF/0.66267)*-1+(XAGEUR/26.519)*1', timeframe.period, close)
NZDUSD = ta.ema((NZDUSD0+NZDUSD1) / 14 * 0.59021, ema)
src := syminfo.ticker=='NZDUSD' ? NZDUSD : src
USDJPY0 = request.security('(USDCZK/23.7311)*5+(USDTHB/36.788)*4+(CADJPY/112.329)*3+(USDZAR/19.14448)*-2+(XNGUSD/1.704)*-2+(USDMXN/17.0684)*-2+(SEKJPY/14.092)*-1+(XLE/93.91)*1+(NOKJPY/13.981)*-1+(USDSEK/10.9657)*-1', timeframe.period, close)
USDJPY1 = request.security('(USDHUF/370.211)*1+(XAUEUR/2234.79)*1+(NOR25/1255.17)*1+(CORN/436.19)*-1', timeframe.period, close)
USDJPY = ta.ema((USDJPY0+USDJPY1) / 14 * 154.649, ema)
src := syminfo.ticker=='USDJPY' ? USDJPY : src
EURCHF0 = request.security('(GBPCHF/1.13461)*5+(DBA/25.89)*5+(CHFSGD/1.493)*-2+(EWZ/30.14)*-2+(XNGUSD/1.704)*-2+(EURZAR/20.36354)*-1+(XLE/93.91)*1+(NZDCAD/0.81251)*-1+(AUDNZD/1.08785)*1+(EEM/39.86)*1', timeframe.period, close)
EURCHF1 = request.security('(AUDCAD/0.88394)*-1+(USDMXN/17.0684)*-1+(USDSEK/10.9657)*1+(NZDCHF/0.5384)*-1', timeframe.period, close)
EURCHF = ta.ema((EURCHF0+EURCHF1) / 14 * 0.97108, ema)
src := syminfo.ticker=='EURCHF' ? EURCHF : src
EURUSD0 = request.security('(XBRUSD/87.08)*-6+(XLE/93.91)*-5+(NZDCAD/0.81251)*3+(XLP/73.76)*3+(USDSGD/1.3622)*-3+(XLU/64.48)*2+(EURDKK/7.46057)*-2+(AUDCAD/0.88394)*2+(AUDJPY/99.299)*2+(FXI/24.03)*1', timeframe.period, close)
EURUSD1 = request.security('(USDHUF/370.211)*-1+(EURJPY/164.606)*1+(EWH/14.71)*1+(EURHKD/8.33545)*1+(USDPLN/4.07289)*-1', timeframe.period, close)
EURUSD = ta.ema((EURUSD0+EURUSD1) / 15 * 1.06437, ema)
src := syminfo.ticker=='EURUSD' ? EURUSD : src
GBPNZD0 = request.security('(EWZ/30.14)*-2+(EEM/39.86)*1+(XLP/73.76)*1+(URA/28.94)*-1+(GBPJPY/192.328)*1', timeframe.period, close)
GBPNZD = ta.ema((GBPNZD0) / 5 * 2.10695, ema)
src := syminfo.ticker=='GBPNZD' ? GBPNZD : src
USDCHF0 = request.security('(AUDCHF/0.5858)*4+(AUDNZD/1.08785)*4+(NZDCAD/0.81251)*-4+(EWZ/30.14)*-4+(AUDCAD/0.88394)*-3+(XLE/93.91)*3+(SEKJPY/14.092)*-2+(NZDUSD/0.59021)*-2+(AUDSGD/0.87467)*-2+(GBPCHF/1.13461)*2', timeframe.period, close)
USDCHF1 = request.security('(DBA/25.89)*2+(CADJPY/112.329)*1+(CHFSGD/1.493)*-1', timeframe.period, close)
USDCHF = ta.ema((USDCHF0+USDCHF1) / 13 * 0.91233, ema)
src := syminfo.ticker=='USDCHF' ? USDCHF : src
USDCAD0 = request.security('(USDJPY/154.635)*6+(XLE/94.94)*4+(XBRUSD/87.36)*4+(EWY/61.29)*-4+(USDHUF/369.812)*2+(AUDSGD/0.87363)*-2+(AUDJPY/99.23)*-2+(NZDJPY/91.047)*-2+(XLU/65.36)*-2+(EURGBP/0.86136)*1', timeframe.period, close)
USDCAD1 = request.security('(CADJPY/112.462)*-1+(XAGEUR/26.9)*-1+(USDCZK/23.6632)*1', timeframe.period, close)
USDCAD = ta.ema((USDCAD0+USDCAD1) / 13 * 1.37498, ema)
src := syminfo.ticker=='USDCAD' ? USDCAD : src
XAUUSD0 = request.security('(XLI/120.66)*6+(UNG/14.36)*-5+(LQD/104.84)*-2+(IT40/33708.2)*2+(GBPJPY/192.328)*2+(ICMARKETS:ES35/10718.3)*2+(EWW/64.86)*1+(EWC/36.83)*1+(MidDE50/26234.0)*-1+(CADJPY/112.329)*-1', timeframe.period, close)
// XAUUSD = ta.ema((XAUUSD0) / 10 * 2378.86, ema)
// XAUUSD := normalize(XAUUSD, 500) + normalize(bias, 500)
XAUUSD = XAUUSD0 + bias
src := syminfo.ticker=='XAUUSD' ? XAUUSD : src
src := syminfo.ticker=='GC1!' ? XAUUSD : src
plot(src, title='Value Line', color=c, linewidth = linewidth)