ts_rank(divide(ts_delta(price, 5), price), 120)

group_neutralize(ts_rank(multiply(volume,turnover),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_covariance(volume,turnover,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(greater(volume,ts_delay(volume,1)),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(divide(volume,ts_mean(volume,20)),20),pv13_h_min20_top3000_sector)

ts_backfill(ts_delta(price, 1), 5, 1)

ts_std_dev(ts_delta(price, 5), 20)

ts_zscore(subtract(group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)), pv13_h_min20_top3000_sector), group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)), pv13_h_min20_top3000_sector)), 20)

group_neutralize(ts_rank(ts_delay(volume,5),20),pv13_h_min20_top3000_sector)

ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)

winsorize(ts_zscore(subtract(group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)), pv13_h_min20_top3000_sector), group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)), pv13_h_min20_top3000_sector)), 20), 4)

ts_backfill(ts_delta(price, 1), 3, 1)

ts_arg_min(ts_std_dev(turnover, 5), 10)

multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60))

ts_rank(ts_delta(ts_mean(volume, 5), 5), 30)

group_neutralize(ts_rank(ts_decay_linear(volume,5),20),pv13_h_min20_top3000_sector)

ts_sum(ts_mean(volume, 5), 10)

group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)), pv13_h_min20_top3000_sector)

ts_count_nans(ts_mean(volume, 5), 10)

ts_quantile(ts_delta(turnover, 5), 60)

group_neutralize(ts_rank(ts_delta(close,1),20),pv13_h_min20_top3000_sector)

ts_delay(ts_zscore(volume, 20), 5)

group_neutralize(ts_rank(subtract(turnover,ts_mean(turnover,20)),20),pv13_h_min20_top3000_sector)

if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1)

ts_arg_min(ts_std_dev(price, 10), 20)

group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector)

ts_covariance(price, volume, 30)

group_neutralize(ts_rank(ts_arg_min(turnover,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_product(divide(volume,ts_delay(volume,1)),5),20),pv13_h_min20_top3000_sector)

multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60))

add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector))

group_neutralize(ts_rank(add(volume,turnover),20),pv13_h_min20_top3000_sector)

ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)

group_neutralize(ts_rank(ts_zscore(volume,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_sum(volume,5),20),pv13_h_min20_top3000_sector)

group_rank(ts_std_dev(turnover, 10), industry)

group_neutralize(ts_rank(signed_power(volume,0.5),20),pv13_h_min20_top3000_sector)

ts_rank(ts_mean(market_breadth, 60), 60)

group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)), pv13_h_min20_top3000_sector)

add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))

group_zscore(ts_std_dev(volume, 30), sector)

ts_zscore(ts_mean(turnover, 10), 30)

group_neutralize(ts_rank(volume,20),pv13_h_min20_top3000_sector)

subtract(group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)), pv13_h_min20_top3000_sector), group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)), pv13_h_min20_top3000_sector))

group_neutralize(ts_rank(ts_av_diff(volume,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_delta(turnover,5),20),pv13_h_min20_top3000_sector)

ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5)

group_neutralize(ts_rank(abs(ts_delta(volume,1)),20),pv13_h_min20_top3000_sector)

group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)

ts_av_diff(ts_mean(price, 10), 20)

multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)))

group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector)

group_scale(ts_mean(price, 5), sector)

group_neutralize(ts_rank(ts_backfill(volume,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(if_else(volume>ts_mean(volume,20),1,-1),20),pv13_h_min20_top3000_sector)

ts_quantile(ts_delta(volume, 10), 60)

add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60))

ts_zscore(add(ts_mean(volume, 20), ts_mean(turnover, 20)), 60)

ts_arg_max(ts_mean(volume, 5), 20)

scale(winsorize(ts_zscore(subtract(group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250)), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) < ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.2), 1, 0), 60)), pv13_h_min20_top3000_sector), group_neutralize(multiply(multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1), reverse(ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))), ts_sum(if_else(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))) > ts_quantile(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)), 250, "gaussian"), 0.8), 1, 0), 60)), pv13_h_min20_top3000_sector)), 20), 4))

ts_rank(ts_mean(vix, 60), 60)

group_neutralize(ts_rank(volume, 60), industry)

group_neutralize(ts_rank(ts_arg_max(volume,10),20),pv13_h_min20_top3000_sector)

ts_arg_max(ts_mean(turnover, 5), 30)

group_neutralize(ts_rank(turnover,20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_corr(volume,turnover,10),20),pv13_h_min20_top3000_sector)

ts_count_nans(ts_mean(turnover, 5), 10)

group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)

ts_covariance(volume, turnover, 30)

ts_regression(price, volume, 30, 0, 0)

group_neutralize(ts_rank(ts_regression(volume,turnover,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_count_nans(volume,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_quantile(volume,10),20),pv13_h_min20_top3000_sector)

ts_decay_linear(ts_mean(price, 5), 10)

if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) < 0, 1, -1)

ts_scale(ts_corr(volume, turnover, 60), 90)

ts_product(ts_mean(turnover, 5), 10)

group_neutralize(ts_rank(ts_std_dev(turnover,10),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_mean(volume,5),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(sign(ts_delta(volume,1)),20),pv13_h_min20_top3000_sector)

group_neutralize(ts_rank(ts_scale(volume,20),20),pv13_h_min20_top3000_sector)

multiply(if_else(ts_delta(add(ts_rank(ts_mean(market_breadth, 60), 60), ts_rank(ts_mean(vix, 60), 60)), 5) > 0, 1, -1), ts_rank(subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector))), 250))

subtract(add(group_zscore(ts_mean(volume, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(turnover, 20), pv13_h_min20_top3000_sector)), add(group_zscore(ts_mean(bid_ask_spread, 20), pv13_h_min20_top3000_sector), group_zscore(ts_mean(amihud_illiquidity, 20), pv13_h_min20_top3000_sector)))

