++
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
ts_corr(ts_backfill(fscore_total,44), ts_backfill(divide(fnd6_spce,add(call_breakeven_120,put_breakeven_120)),44),528)
|
||||
|
||||
ts_corr(ts_backfill(ts_delta(fscore_total,132),44), ts_backfill(subtract(fnd6_spce,divide(add(call_breakeven_120,put_breakeven_120),2)),44),792)
|
||||
|
||||
ts_corr(ts_backfill(ts_zscore(fscore_total,22),66), ts_backfill(ts_zscore(fnd6_spce,66),66),756)
|
||||
|
||||
ts_corr(ts_backfill(ts_rank(fscore_total,22),66), ts_backfill(ts_rank(fnd6_spce,66),66),504)
|
||||
|
||||
ts_corr(ts_backfill(multiply(sign(ts_delta(fscore_total,66)),sqrt(abs(ts_delta(fscore_total,66)))),66), ts_backfill(divide(fnd6_spce,call_breakeven_120),66),630)
|
||||
|
||||
ts_corr(ts_backfill(ts_sum(fscore_total,66),66), ts_backfill(ts_sum(fnd6_spce,66),66),1008)
|
||||
|
||||
ts_corr(ts_backfill(ts_mean(fscore_total,44),66), ts_backfill(ts_mean(fnd6_spce,44),66),880)
|
||||
|
||||
ts_corr(ts_backfill(subtract(fscore_total,ts_delay(fscore_total,132)),44), ts_backfill(subtract(fnd6_spce,ts_delay(fnd6_spce,132)),44),660)
|
||||
|
||||
ts_corr(ts_backfill(ts_regression(fscore_total,ts_step(1),66,0,0),66), ts_backfill(ts_regression(fnd6_spce,ts_step(1),66,0,0),66),924)
|
||||
|
||||
ts_corr(ts_backfill(ts_decay_linear(fscore_total,44),66), ts_backfill(ts_decay_linear(fnd6_spce,44),66),572)
|
||||
|
||||
ts_corr(ts_backfill(group_neutralize(fscore_total,top1000),44), ts_backfill(group_neutralize(divide(fnd6_spce,call_breakeven_120),top1000),44),616)
|
||||
|
||||
ts_corr(ts_backfill(ts_scale(fscore_total,44),44), ts_backfill(ts_scale(fnd6_spce,44),44),704)
|
||||
|
||||
ts_corr(ts_backfill(ts_av_diff(fscore_total,44),44), ts_backfill(ts_av_diff(fnd6_spce,44),44),528)
|
||||
|
||||
ts_corr(ts_backfill(ts_std_dev(fscore_total,22),66), ts_backfill(ts_std_dev(fnd6_spce,22),66),792)
|
||||
|
||||
ts_corr(ts_backfill(if_else(ts_delta(fscore_total,22)>0,ts_delta(fscore_total,22),0),66), ts_backfill(if_else(ts_delta(fnd6_spce,22)>0,ts_delta(fnd6_spce,22),0),66),504)
|
||||
|
||||
ts_corr(ts_backfill(ts_product(fscore_total,22),66), ts_backfill(ts_product(fnd6_spce,22),66),396)
|
||||
|
||||
ts_corr(ts_backfill(divide(ts_delta(fscore_total,22),ts_std_dev(fscore_total,66)),66), ts_backfill(divide(ts_delta(fnd6_spce,22),ts_std_dev(fnd6_spce,66)),66),840)
|
||||
|
||||
ts_corr(ts_backfill(signed_power(ts_delta(fscore_total,44),0.5),66), ts_backfill(signed_power(ts_delta(fnd6_spce,44),0.5),66),660)
|
||||
|
||||
ts_corr(ts_backfill(add(ts_zscore(fscore_total,22),ts_rank(fscore_total,22)),44), ts_backfill(add(ts_zscore(fnd6_spce,22),ts_rank(fnd6_spce,22)),44),880)
|
||||
|
||||
ts_corr(ts_backfill(subtract(ts_zscore(fscore_total,44),ts_delay(ts_zscore(fscore_total,44),22)),44), ts_backfill(subtract(ts_zscore(fnd6_spce,44),ts_delay(ts_zscore(fnd6_spce,44),22)),44),616)
|
||||
@@ -0,0 +1,39 @@
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,50), ts_backfill(fscore_value,50),756)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,80), ts_backfill(fscore_value,80),756)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),500)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),1000)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_std_dev(fscore_momentum,66)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_std_dev(fscore_value,66)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_zscore(fscore_momentum,66)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_zscore(fscore_value,66)
|
||||
|
||||
group_neutralize(ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756), pv13_h_min2_focused_sector)
|
||||
|
||||
group_neutralize(ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756), pv13_h_min24_500_sector)
|
||||
|
||||
group_neutralize(ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756), pv13_h_min22_1000_sector)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * if_else(ts_count_nans(fscore_momentum,66) > 0, 0, 1)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * if_else(ts_count_nans(fscore_value,66) > 0, 0, 1)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * sign(ts_delta(fscore_momentum,1))
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * sign(ts_delta(fscore_value,1))
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_rank(fscore_momentum,66)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * ts_rank(fscore_value,66)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * winsorize(ts_delta(fscore_momentum,66),4)
|
||||
|
||||
ts_corr(ts_backfill(fscore_momentum,66), ts_backfill(fscore_value,66),756) * winsorize(ts_delta(fscore_value,66),4)
|
||||
@@ -0,0 +1,39 @@
|
||||
ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
|
||||
group_neutralize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), group)
|
||||
|
||||
winsorize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 3)
|
||||
|
||||
if_else(ts_std_dev(subtract(implied_volatility_call_120, implied_volatility_put_90), 10) > 10, 0, ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10))
|
||||
|
||||
ts_zscore(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 20)
|
||||
|
||||
ts_rank(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 20)
|
||||
|
||||
scale(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10))
|
||||
|
||||
scale(group_neutralize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), group))
|
||||
|
||||
scale(group_neutralize(ts_zscore(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 20), group))
|
||||
|
||||
winsorize(group_neutralize(ts_zscore(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 20), group), 3)
|
||||
|
||||
ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 5)
|
||||
|
||||
ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 15)
|
||||
|
||||
ts_sum(subtract(implied_volatility_call_120, ts_mean(implied_volatility_put_90, 5)), 10)
|
||||
|
||||
ts_sum(subtract(ts_mean(implied_volatility_call_120, 5), implied_volatility_put_90), 10)
|
||||
|
||||
ts_sum(ts_delta(subtract(implied_volatility_call_120, implied_volatility_put_90), 1), 10)
|
||||
|
||||
ts_sum(ts_zscore(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 10)
|
||||
|
||||
ts_sum(ts_rank(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), 10)
|
||||
|
||||
ts_sum(ts_scale(subtract(implied_volatility_call_120, implied_volatility_put_90), 5), 10)
|
||||
|
||||
ts_sum(divide(subtract(implied_volatility_call_120, implied_volatility_put_90), ts_std_dev(implied_volatility_call_120, 10)), 10)
|
||||
|
||||
ts_sum(ts_backfill(subtract(implied_volatility_call_120, implied_volatility_put_90), 5), 10)
|
||||
@@ -0,0 +1,20 @@
|
||||
ts_sum(winsorize(subtract(implied_volatility_call_120, implied_volatility_put_90), std=3), 10)
|
||||
ts_zscore(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
group_neutralize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), "subindustry")
|
||||
rank(ts_sum(winsorize(subtract(implied_volatility_call_120, implied_volatility_put_90), std=4), 10))
|
||||
ts_rank(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
ts_scale(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
ts_av_diff(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
hump(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), hump=0.02)
|
||||
ts_decay_linear(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
group_zscore(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), "subindustry")
|
||||
normalize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), useStd=true)
|
||||
ts_std_dev(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
multiply(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), sign(ts_delta(implied_volatility_call_120, 1)))
|
||||
rank(ts_zscore(subtract(implied_volatility_call_120, implied_volatility_put_90), 10))
|
||||
ts_quantile(subtract(implied_volatility_call_120, implied_volatility_put_90), 10, driver="uniform")
|
||||
winsorize(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), std=3.5)
|
||||
group_scale(ts_sum(subtract(implied_volatility_call_120, implied_volatility_put_90), 10), "subindustry")
|
||||
ts_correlation(subtract(implied_volatility_call_120, implied_volatility_put_90), implied_volatility_call_60, 10)
|
||||
ts_arg_max(subtract(implied_volatility_call_120, implied_volatility_put_90), 10)
|
||||
ts_delta(ts_sum(winsorize(subtract(implied_volatility_call_120, implied_volatility_put_90), std=4), 10), 1)
|
||||
@@ -0,0 +1,13 @@
|
||||
gross_margin = divide(fnd6_newqeventv110_spceepsq, fnd6_newqeventv110_spcedq)
|
||||
|
||||
industry_zscore = group_zscore(gross_margin, group_sw)
|
||||
|
||||
zscore_trend = ts_regression(industry_zscore, ts_step(1), 4, 0, 0)
|
||||
|
||||
revenue_growth = ts_delta(fnd6_newqeventv110_spcedq, 4)
|
||||
|
||||
signal = if_else(revenue_growth >= 0, zscore_trend, 0)
|
||||
|
||||
ranked_signal = rank(signal)
|
||||
|
||||
final_alpha = subtract(ranked_signal, 0.5)
|
||||
@@ -0,0 +1,19 @@
|
||||
divide(fnd6_spce, fnd6_newqv1300_spceepsq)
|
||||
|
||||
group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类)
|
||||
|
||||
ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4)
|
||||
|
||||
sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4))
|
||||
|
||||
rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4))
|
||||
|
||||
if_else(fnd6_newqv1300_spceepsq >= 0, ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4), NaN)
|
||||
|
||||
multiply(sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4)), rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4)))
|
||||
|
||||
winsorize(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4),4)
|
||||
|
||||
group_rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4),申万行业分类)
|
||||
|
||||
normalize(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqv1300_spceepsq),申万行业分类),4))
|
||||
@@ -0,0 +1,60 @@
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
alpha_raw = if_else(industry_zscore > 0, reverse(slope), slope)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
alpha_raw = multiply(slope, reverse(industry_zscore))
|
||||
alpha = rank(alpha_raw)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
signal = if_else(slope > 0, 1, if_else(slope < 0, -1, 0))
|
||||
alpha = multiply(signal, industry_zscore)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
alpha_raw = ts_zscore(slope, 8)
|
||||
alpha = reverse(alpha_raw)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
combined_score = add(industry_zscore, slope)
|
||||
alpha = rank(combined_score)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
alpha_raw = multiply(industry_zscore, slope)
|
||||
alpha_rank = rank(alpha_raw)
|
||||
alpha = subtract(alpha_rank, 0.5)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
trend_strength = ts_std_dev(slope, 4)
|
||||
alpha = multiply(slope, trend_strength)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
baseline = ts_mean(industry_zscore, 8)
|
||||
alpha_raw = subtract(slope, baseline)
|
||||
alpha = rank(alpha_raw)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
pos_alpha = if_else(industry_zscore <= 0, reverse(slope), multiply(slope, -1))
|
||||
alpha = rank(pos_alpha)
|
||||
|
||||
gross_margin = divide(fnd6_acdo, fnd6_newqeventv110_spcepd12)
|
||||
industry_zscore = group_zscore(gross_margin, swsector)
|
||||
slope = ts_decay_linear(industry_zscore, 4)
|
||||
raw_signal = if_else(industry_zscore > 0, if_else(slope < 0, 1, -1), if_else(slope > 0, 1, -1))
|
||||
alpha = multiply(raw_signal, industry_zscore)
|
||||
@@ -0,0 +1,19 @@
|
||||
divide(fnd6_spce, fnd6_newqeventv110_spceepsq)
|
||||
|
||||
group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业)
|
||||
|
||||
ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)
|
||||
|
||||
sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4))
|
||||
|
||||
multiply(sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)), rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)))
|
||||
|
||||
if_else(greater_equal(fnd6_newqeventv110_spceepsq, 0), multiply(sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)), rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4))), 0)
|
||||
|
||||
ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4, dense=false)
|
||||
|
||||
if_else(greater_equal(ts_delta(fnd6_newqeventv110_spceepsq, 1), 0), multiply(sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)), rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4))), 0)
|
||||
|
||||
winsorize(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4), std=3)
|
||||
|
||||
normalize(multiply(sign(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4)), rank(ts_decay_linear(group_zscore(divide(fnd6_spce, fnd6_newqeventv110_spceepsq), group=申万行业), 4))), useStd=true)
|
||||
Reference in New Issue
Block a user