cnhkmcp 2.2.0__py3-none-any.whl → 2.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. cnhkmcp/__init__.py +1 -1
  2. cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/README.md +1 -1
  3. cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/config.json +2 -2
  4. cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/main.py +1 -1
  5. cnhkmcp/untracked/AI/321/206/320/261/320/234/321/211/320/255/320/262/321/206/320/237/320/242/321/204/342/225/227/342/225/242/vector_db/chroma.sqlite3 +0 -0
  6. cnhkmcp/untracked/APP/Tranformer/Transformer.py +2 -2
  7. cnhkmcp/untracked/APP/Tranformer/transformer_config.json +1 -1
  8. cnhkmcp/untracked/APP/blueprints/feature_engineering.py +2 -2
  9. cnhkmcp/untracked/APP/blueprints/inspiration_house.py +4 -4
  10. cnhkmcp/untracked/APP/blueprints/paper_analysis.py +3 -3
  11. cnhkmcp/untracked/APP/give_me_idea/BRAIN_Alpha_Template_Expert_SystemPrompt.md +34 -73
  12. cnhkmcp/untracked/APP/give_me_idea/alpha_data_specific_template_master.py +2 -2
  13. cnhkmcp/untracked/APP/give_me_idea/what_is_Alpha_template.md +366 -1
  14. cnhkmcp/untracked/APP/static/inspiration.js +345 -13
  15. cnhkmcp/untracked/APP/templates/index.html +11 -3
  16. cnhkmcp/untracked/APP/templates/transformer_web.html +1 -1
  17. cnhkmcp/untracked/APP/trailSomeAlphas/README.md +38 -0
  18. cnhkmcp/untracked/APP/trailSomeAlphas/ace.log +66 -0
  19. cnhkmcp/untracked/APP/trailSomeAlphas/enhance_template.py +588 -0
  20. cnhkmcp/untracked/APP/trailSomeAlphas/requirements.txt +3 -0
  21. cnhkmcp/untracked/APP/trailSomeAlphas/run_pipeline.py +1001 -0
  22. cnhkmcp/untracked/APP/trailSomeAlphas/run_pipeline_step_by_step.ipynb +5258 -0
  23. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/OUTPUT_TEMPLATE.md +325 -0
  24. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/SKILL.md +503 -0
  25. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/examples.md +244 -0
  26. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/output_report/ASI_delay1_analyst11_ideas.md +285 -0
  27. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-data-feature-engineering/reference.md +399 -0
  28. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/SKILL.md +40 -0
  29. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/config.json +6 -0
  30. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709385783386000.json +388 -0
  31. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709386274840400.json +131 -0
  32. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709386838244700.json +1926 -0
  33. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709387369198500.json +31 -0
  34. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709387908905800.json +1926 -0
  35. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709388486243600.json +240 -0
  36. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709389024058600.json +1926 -0
  37. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709389549608700.json +41 -0
  38. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709390068714000.json +110 -0
  39. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709390591996900.json +36 -0
  40. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709391129137100.json +31 -0
  41. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709391691643500.json +41 -0
  42. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709392192099200.json +31 -0
  43. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709392703423500.json +46 -0
  44. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769709393213729400.json +246 -0
  45. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710186683932500.json +388 -0
  46. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710187165414300.json +131 -0
  47. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710187665211700.json +1926 -0
  48. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710188149193400.json +31 -0
  49. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710188667627400.json +1926 -0
  50. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710189220822000.json +240 -0
  51. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710189726189500.json +1926 -0
  52. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710190248066100.json +41 -0
  53. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710190768298700.json +110 -0
  54. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710191282588100.json +36 -0
  55. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710191838960900.json +31 -0
  56. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710192396688000.json +41 -0
  57. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710192941922400.json +31 -0
  58. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710193473524600.json +46 -0
  59. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710194001961200.json +246 -0
  60. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710420975888800.json +46 -0
  61. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710421647590100.json +196 -0
  62. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710422131378500.json +5 -0
  63. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710422644184400.json +196 -0
  64. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710423702350600.json +196 -0
  65. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_1_idea_1769710424244661800.json +5 -0
  66. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/analyst11_ASI_delay1.csv +211 -0
  67. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/data/analyst11_ASI_delay1/final_expressions.json +7062 -0
  68. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/ace.log +3 -0
  69. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/ace_lib.py +1514 -0
  70. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/fetch_dataset.py +113 -0
  71. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/helpful_functions.py +180 -0
  72. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/implement_idea.py +236 -0
  73. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/merge_expression_list.py +90 -0
  74. cnhkmcp/untracked/APP/trailSomeAlphas/skills/brain-feature-implementation/scripts/parsetab.py +60 -0
  75. cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance/op/321/206/320/220/342/225/227/321/207/342/225/227/320/243.md +434 -0
  76. cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance/sample_prompt.md +62 -0
  77. cnhkmcp/untracked/APP/trailSomeAlphas/skills/template_final_enhance//321/205/320/235/320/245/321/205/320/253/320/260/321/205/320/275/320/240/321/206/320/220/320/255/321/210/320/220/320/223/321/211/320/220/342/225/227/321/210/342/225/233/320/241/321/211/320/243/342/225/233.md +354 -0
  78. cnhkmcp/untracked/APP/usage.md +2 -2
  79. cnhkmcp/untracked/APP//321/210/342/224/220/320/240/321/210/320/261/320/234/321/206/320/231/320/243/321/205/342/225/235/320/220/321/206/320/230/320/241.py +388 -8
  80. cnhkmcp/untracked/skills/alpha-expression-verifier/scripts/validator.py +889 -0
  81. cnhkmcp/untracked/skills/brain-feature-implementation/scripts/implement_idea.py +4 -3
  82. cnhkmcp/untracked/skills/brain-improve-alpha-performance/arXiv_API_Tool_Manual.md +490 -0
  83. cnhkmcp/untracked/skills/brain-improve-alpha-performance/reference.md +1 -1
  84. cnhkmcp/untracked/skills/brain-improve-alpha-performance/scripts/arxiv_api.py +229 -0
  85. cnhkmcp/untracked//321/211/320/225/320/235/321/207/342/225/234/320/276/321/205/320/231/320/235/321/210/342/224/220/320/240/321/210/320/261/320/234/321/206/320/230/320/241_/321/205/320/276/320/231/321/210/320/263/320/225/321/205/342/224/220/320/225/321/210/320/266/320/221/321/204/342/225/233/320/255/321/210/342/225/241/320/246/321/205/320/234/320/225.py +35 -11
  86. cnhkmcp/vector_db/_manifest.json +1 -0
  87. cnhkmcp/vector_db/_meta.json +1 -0
  88. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/METADATA +1 -1
  89. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/RECORD +96 -30
  90. /cnhkmcp/untracked/{skills/expression_verifier → APP/trailSomeAlphas/skills/brain-feature-implementation}/scripts/validator.py +0 -0
  91. /cnhkmcp/untracked/skills/{expression_verifier → alpha-expression-verifier}/SKILL.md +0 -0
  92. /cnhkmcp/untracked/skills/{expression_verifier → alpha-expression-verifier}/scripts/verify_expr.py +0 -0
  93. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/WHEEL +0 -0
  94. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/entry_points.txt +0 -0
  95. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/licenses/LICENSE +0 -0
  96. {cnhkmcp-2.2.0.dist-info → cnhkmcp-2.3.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,246 @@
1
+ {
2
+ "template": "{sector_percentile} - {industry_percentile}",
3
+ "idea": "**Concept**: ESG Relative Advantage Score\n- **Sample Fields Used**: sector_percentile, industry_percentile\n- **Definition**: Difference between sector and industry percentile rankings\n- **Why This Feature**: Measures whether a company performs better relative to broader or narrower peer groups\n- **Logical Meaning**: Positive = stronger relative to sector than industry; suggests competitive advantage erodes in closer peer comparison\n- **Directionality**: Positive = better in broader peer group; Negative = better in closer peers\n- **Boundary Conditions**: Large positive = \"big fish in big pond\"; Large negative = \"specialist in niche\"",
4
+ "expression_list": [
5
+ "anti_pollution_policy_sector_percentile - anti_pollution_policy_industry_percentile",
6
+ "anti_pollution_policy_subsector_percentile - anti_pollution_policy_industry_percentile",
7
+ "board_independence_sector_percentile - anti_pollution_policy_industry_percentile",
8
+ "board_independence_subsector_percentile - anti_pollution_policy_industry_percentile",
9
+ "community_engagement_sector_percentile - anti_pollution_policy_industry_percentile",
10
+ "community_engagement_subsector_percentile - anti_pollution_policy_industry_percentile",
11
+ "community_hybrid_sector_percentile - anti_pollution_policy_industry_percentile",
12
+ "community_hybrid_subsector_percentile - anti_pollution_policy_industry_percentile",
13
+ "board_independence_sector_percentile - board_independence_industry_percentile",
14
+ "board_independence_subsector_percentile - board_independence_industry_percentile",
15
+ "anti_pollution_policy_sector_percentile - board_independence_industry_percentile",
16
+ "anti_pollution_policy_subsector_percentile - board_independence_industry_percentile",
17
+ "community_engagement_sector_percentile - board_independence_industry_percentile",
18
+ "community_engagement_subsector_percentile - board_independence_industry_percentile",
19
+ "community_hybrid_sector_percentile - board_independence_industry_percentile",
20
+ "community_hybrid_subsector_percentile - board_independence_industry_percentile",
21
+ "community_engagement_sector_percentile - community_engagement_industry_percentile",
22
+ "community_engagement_subsector_percentile - community_engagement_industry_percentile",
23
+ "community_hybrid_sector_percentile - community_engagement_industry_percentile",
24
+ "community_hybrid_subsector_percentile - community_engagement_industry_percentile",
25
+ "community_maxcorr_sector_percentile - community_engagement_industry_percentile",
26
+ "community_maxcorr_subsector_percentile - community_engagement_industry_percentile",
27
+ "community_score_sector_percentile - community_engagement_industry_percentile",
28
+ "community_score_subsector_percentile - community_engagement_industry_percentile",
29
+ "community_hybrid_sector_percentile - community_hybrid_industry_percentile",
30
+ "community_hybrid_subsector_percentile - community_hybrid_industry_percentile",
31
+ "community_engagement_sector_percentile - community_hybrid_industry_percentile",
32
+ "community_engagement_subsector_percentile - community_hybrid_industry_percentile",
33
+ "community_maxcorr_sector_percentile - community_hybrid_industry_percentile",
34
+ "community_maxcorr_subsector_percentile - community_hybrid_industry_percentile",
35
+ "community_score_sector_percentile - community_hybrid_industry_percentile",
36
+ "community_score_subsector_percentile - community_hybrid_industry_percentile",
37
+ "community_maxcorr_sector_percentile - community_maxcorr_industry_percentile",
38
+ "community_maxcorr_subsector_percentile - community_maxcorr_industry_percentile",
39
+ "community_engagement_sector_percentile - community_maxcorr_industry_percentile",
40
+ "community_engagement_subsector_percentile - community_maxcorr_industry_percentile",
41
+ "community_hybrid_sector_percentile - community_maxcorr_industry_percentile",
42
+ "community_hybrid_subsector_percentile - community_maxcorr_industry_percentile",
43
+ "community_score_sector_percentile - community_maxcorr_industry_percentile",
44
+ "community_score_subsector_percentile - community_maxcorr_industry_percentile",
45
+ "community_score_sector_percentile - community_score_industry_percentile",
46
+ "community_score_subsector_percentile - community_score_industry_percentile",
47
+ "community_engagement_sector_percentile - community_score_industry_percentile",
48
+ "community_engagement_subsector_percentile - community_score_industry_percentile",
49
+ "community_hybrid_sector_percentile - community_score_industry_percentile",
50
+ "community_hybrid_subsector_percentile - community_score_industry_percentile",
51
+ "community_maxcorr_sector_percentile - community_score_industry_percentile",
52
+ "community_maxcorr_subsector_percentile - community_score_industry_percentile",
53
+ "disclosure_transparency_sector_percentile - disclosure_transparency_industry_percentile",
54
+ "disclosure_transparency_subsector_percentile - disclosure_transparency_industry_percentile",
55
+ "anti_pollution_policy_sector_percentile - disclosure_transparency_industry_percentile",
56
+ "anti_pollution_policy_subsector_percentile - disclosure_transparency_industry_percentile",
57
+ "board_independence_sector_percentile - disclosure_transparency_industry_percentile",
58
+ "board_independence_subsector_percentile - disclosure_transparency_industry_percentile",
59
+ "community_engagement_sector_percentile - disclosure_transparency_industry_percentile",
60
+ "community_engagement_subsector_percentile - disclosure_transparency_industry_percentile",
61
+ "employee_compensation_sector_percentile - employee_compensation_industry_percentile",
62
+ "employee_compensation_subsector_percentile - employee_compensation_industry_percentile",
63
+ "employee_training_sector_percentile - employee_compensation_industry_percentile",
64
+ "employee_training_subsector_percentile - employee_compensation_industry_percentile",
65
+ "environmental_corr_weighted_sector_percentile - employee_compensation_industry_percentile",
66
+ "environmental_corr_weighted_subsector_percentile - employee_compensation_industry_percentile",
67
+ "environmental_positive_corr_sector_percentile - employee_compensation_industry_percentile",
68
+ "environmental_positive_corr_subsector_percentile - employee_compensation_industry_percentile",
69
+ "employee_training_sector_percentile - employee_training_industry_percentile",
70
+ "employee_training_subsector_percentile - employee_training_industry_percentile",
71
+ "employee_compensation_sector_percentile - employee_training_industry_percentile",
72
+ "employee_compensation_subsector_percentile - employee_training_industry_percentile",
73
+ "environmental_corr_weighted_sector_percentile - employee_training_industry_percentile",
74
+ "environmental_corr_weighted_subsector_percentile - employee_training_industry_percentile",
75
+ "environmental_positive_corr_sector_percentile - employee_training_industry_percentile",
76
+ "environmental_positive_corr_subsector_percentile - employee_training_industry_percentile",
77
+ "environmental_corr_weighted_sector_percentile - environmental_corr_weighted_industry_percentile",
78
+ "environmental_corr_weighted_subsector_percentile - environmental_corr_weighted_industry_percentile",
79
+ "environmental_positive_corr_sector_percentile - environmental_corr_weighted_industry_percentile",
80
+ "environmental_positive_corr_subsector_percentile - environmental_corr_weighted_industry_percentile",
81
+ "environmental_sector_percentile - environmental_corr_weighted_industry_percentile",
82
+ "environmental_subsector_percentile - environmental_corr_weighted_industry_percentile",
83
+ "employee_compensation_sector_percentile - environmental_corr_weighted_industry_percentile",
84
+ "employee_compensation_subsector_percentile - environmental_corr_weighted_industry_percentile",
85
+ "environmental_corr_weighted_sector_percentile - environmental_industry_percentile",
86
+ "environmental_corr_weighted_subsector_percentile - environmental_industry_percentile",
87
+ "environmental_positive_corr_sector_percentile - environmental_industry_percentile",
88
+ "environmental_positive_corr_subsector_percentile - environmental_industry_percentile",
89
+ "environmental_sector_percentile - environmental_industry_percentile",
90
+ "environmental_subsector_percentile - environmental_industry_percentile",
91
+ "employee_compensation_sector_percentile - environmental_industry_percentile",
92
+ "employee_compensation_subsector_percentile - environmental_industry_percentile",
93
+ "environmental_positive_corr_sector_percentile - environmental_positive_corr_industry_percentile",
94
+ "environmental_positive_corr_subsector_percentile - environmental_positive_corr_industry_percentile",
95
+ "environmental_corr_weighted_sector_percentile - environmental_positive_corr_industry_percentile",
96
+ "environmental_corr_weighted_subsector_percentile - environmental_positive_corr_industry_percentile",
97
+ "environmental_sector_percentile - environmental_positive_corr_industry_percentile",
98
+ "environmental_subsector_percentile - environmental_positive_corr_industry_percentile",
99
+ "employee_compensation_sector_percentile - environmental_positive_corr_industry_percentile",
100
+ "employee_compensation_subsector_percentile - environmental_positive_corr_industry_percentile",
101
+ "governance_corr_weighted_sector_percentile - governance_corr_weighted_industry_percentile",
102
+ "governance_corr_weighted_subsector_percentile - governance_corr_weighted_industry_percentile",
103
+ "governance_positive_corr_sector_percentile - governance_corr_weighted_industry_percentile",
104
+ "governance_positive_corr_subsector_percentile - governance_corr_weighted_industry_percentile",
105
+ "governance_sector_percentile - governance_corr_weighted_industry_percentile",
106
+ "governance_subsector_percentile - governance_corr_weighted_industry_percentile",
107
+ "anti_pollution_policy_sector_percentile - governance_corr_weighted_industry_percentile",
108
+ "anti_pollution_policy_subsector_percentile - governance_corr_weighted_industry_percentile",
109
+ "governance_corr_weighted_sector_percentile - governance_industry_percentile",
110
+ "governance_corr_weighted_subsector_percentile - governance_industry_percentile",
111
+ "governance_positive_corr_sector_percentile - governance_industry_percentile",
112
+ "governance_positive_corr_subsector_percentile - governance_industry_percentile",
113
+ "governance_sector_percentile - governance_industry_percentile",
114
+ "governance_subsector_percentile - governance_industry_percentile",
115
+ "anti_pollution_policy_sector_percentile - governance_industry_percentile",
116
+ "anti_pollution_policy_subsector_percentile - governance_industry_percentile",
117
+ "governance_positive_corr_sector_percentile - governance_positive_corr_industry_percentile",
118
+ "governance_positive_corr_subsector_percentile - governance_positive_corr_industry_percentile",
119
+ "governance_corr_weighted_sector_percentile - governance_positive_corr_industry_percentile",
120
+ "governance_corr_weighted_subsector_percentile - governance_positive_corr_industry_percentile",
121
+ "governance_sector_percentile - governance_positive_corr_industry_percentile",
122
+ "governance_subsector_percentile - governance_positive_corr_industry_percentile",
123
+ "anti_pollution_policy_sector_percentile - governance_positive_corr_industry_percentile",
124
+ "anti_pollution_policy_subsector_percentile - governance_positive_corr_industry_percentile",
125
+ "human_rights_sector_percentile - human_rights_industry_percentile",
126
+ "human_rights_subsector_percentile - human_rights_industry_percentile",
127
+ "anti_pollution_policy_sector_percentile - human_rights_industry_percentile",
128
+ "anti_pollution_policy_subsector_percentile - human_rights_industry_percentile",
129
+ "board_independence_sector_percentile - human_rights_industry_percentile",
130
+ "board_independence_subsector_percentile - human_rights_industry_percentile",
131
+ "community_engagement_sector_percentile - human_rights_industry_percentile",
132
+ "community_engagement_subsector_percentile - human_rights_industry_percentile",
133
+ "management_ethics_sector_percentile - management_ethics_industry_percentile",
134
+ "management_ethics_subsector_percentile - management_ethics_industry_percentile",
135
+ "anti_pollution_policy_sector_percentile - management_ethics_industry_percentile",
136
+ "anti_pollution_policy_subsector_percentile - management_ethics_industry_percentile",
137
+ "board_independence_sector_percentile - management_ethics_industry_percentile",
138
+ "board_independence_subsector_percentile - management_ethics_industry_percentile",
139
+ "community_engagement_sector_percentile - management_ethics_industry_percentile",
140
+ "community_engagement_subsector_percentile - management_ethics_industry_percentile",
141
+ "pollution_prevention_sector_percentile - pollution_prevention_industry_percentile",
142
+ "pollution_prevention_subsector_percentile - pollution_prevention_industry_percentile",
143
+ "anti_pollution_policy_sector_percentile - pollution_prevention_industry_percentile",
144
+ "anti_pollution_policy_subsector_percentile - pollution_prevention_industry_percentile",
145
+ "board_independence_sector_percentile - pollution_prevention_industry_percentile",
146
+ "board_independence_subsector_percentile - pollution_prevention_industry_percentile",
147
+ "community_engagement_sector_percentile - pollution_prevention_industry_percentile",
148
+ "community_engagement_subsector_percentile - pollution_prevention_industry_percentile",
149
+ "resource_efficiency_sector_percentile - resource_efficiency_industry_percentile",
150
+ "resource_efficiency_subsector_percentile - resource_efficiency_industry_percentile",
151
+ "anti_pollution_policy_sector_percentile - resource_efficiency_industry_percentile",
152
+ "anti_pollution_policy_subsector_percentile - resource_efficiency_industry_percentile",
153
+ "board_independence_sector_percentile - resource_efficiency_industry_percentile",
154
+ "board_independence_subsector_percentile - resource_efficiency_industry_percentile",
155
+ "community_engagement_sector_percentile - resource_efficiency_industry_percentile",
156
+ "community_engagement_subsector_percentile - resource_efficiency_industry_percentile",
157
+ "social_corr_weighted_sector_percentile - social_corr_weighted_industry_percentile",
158
+ "social_corr_weighted_subsector_percentile - social_corr_weighted_industry_percentile",
159
+ "social_positive_corr_sector_percentile - social_corr_weighted_industry_percentile",
160
+ "social_positive_corr_subsector_percentile - social_corr_weighted_industry_percentile",
161
+ "social_sector_percentile - social_corr_weighted_industry_percentile",
162
+ "social_subsector_percentile - social_corr_weighted_industry_percentile",
163
+ "sustainability_corr_weighted_sector_percentile - social_corr_weighted_industry_percentile",
164
+ "sustainability_corr_weighted_subsector_percentile - social_corr_weighted_industry_percentile",
165
+ "social_corr_weighted_sector_percentile - social_industry_percentile",
166
+ "social_corr_weighted_subsector_percentile - social_industry_percentile",
167
+ "social_positive_corr_sector_percentile - social_industry_percentile",
168
+ "social_positive_corr_subsector_percentile - social_industry_percentile",
169
+ "social_sector_percentile - social_industry_percentile",
170
+ "social_subsector_percentile - social_industry_percentile",
171
+ "sustainability_corr_weighted_sector_percentile - social_industry_percentile",
172
+ "sustainability_corr_weighted_subsector_percentile - social_industry_percentile",
173
+ "social_positive_corr_sector_percentile - social_positive_corr_industry_percentile",
174
+ "social_positive_corr_subsector_percentile - social_positive_corr_industry_percentile",
175
+ "social_corr_weighted_sector_percentile - social_positive_corr_industry_percentile",
176
+ "social_corr_weighted_subsector_percentile - social_positive_corr_industry_percentile",
177
+ "social_sector_percentile - social_positive_corr_industry_percentile",
178
+ "social_subsector_percentile - social_positive_corr_industry_percentile",
179
+ "sustainability_corr_weighted_sector_percentile - social_positive_corr_industry_percentile",
180
+ "sustainability_corr_weighted_subsector_percentile - social_positive_corr_industry_percentile",
181
+ "sustainability_corr_weighted_sector_percentile - sustainability_corr_weighted_industry_percentile",
182
+ "sustainability_corr_weighted_subsector_percentile - sustainability_corr_weighted_industry_percentile",
183
+ "sustainability_positive_corr_sector_percentile - sustainability_corr_weighted_industry_percentile",
184
+ "sustainability_positive_corr_subsector_percentile - sustainability_corr_weighted_industry_percentile",
185
+ "sustainability_sector_percentile - sustainability_corr_weighted_industry_percentile",
186
+ "sustainability_subsector_percentile - sustainability_corr_weighted_industry_percentile",
187
+ "sustainable_product_sector_percentile - sustainability_corr_weighted_industry_percentile",
188
+ "sustainable_product_subsector_percentile - sustainability_corr_weighted_industry_percentile",
189
+ "sustainability_corr_weighted_sector_percentile - sustainability_industry_percentile",
190
+ "sustainability_corr_weighted_subsector_percentile - sustainability_industry_percentile",
191
+ "sustainability_positive_corr_sector_percentile - sustainability_industry_percentile",
192
+ "sustainability_positive_corr_subsector_percentile - sustainability_industry_percentile",
193
+ "sustainability_sector_percentile - sustainability_industry_percentile",
194
+ "sustainability_subsector_percentile - sustainability_industry_percentile",
195
+ "sustainable_product_sector_percentile - sustainability_industry_percentile",
196
+ "sustainable_product_subsector_percentile - sustainability_industry_percentile",
197
+ "sustainability_positive_corr_sector_percentile - sustainability_positive_corr_industry_percentile",
198
+ "sustainability_positive_corr_subsector_percentile - sustainability_positive_corr_industry_percentile",
199
+ "sustainability_corr_weighted_sector_percentile - sustainability_positive_corr_industry_percentile",
200
+ "sustainability_corr_weighted_subsector_percentile - sustainability_positive_corr_industry_percentile",
201
+ "sustainability_sector_percentile - sustainability_positive_corr_industry_percentile",
202
+ "sustainability_subsector_percentile - sustainability_positive_corr_industry_percentile",
203
+ "sustainable_product_sector_percentile - sustainability_positive_corr_industry_percentile",
204
+ "sustainable_product_subsector_percentile - sustainability_positive_corr_industry_percentile",
205
+ "sustainable_product_sector_percentile - sustainable_product_industry_percentile",
206
+ "sustainable_product_subsector_percentile - sustainable_product_industry_percentile",
207
+ "sustainability_corr_weighted_sector_percentile - sustainable_product_industry_percentile",
208
+ "sustainability_corr_weighted_subsector_percentile - sustainable_product_industry_percentile",
209
+ "sustainability_positive_corr_sector_percentile - sustainable_product_industry_percentile",
210
+ "sustainability_positive_corr_subsector_percentile - sustainable_product_industry_percentile",
211
+ "sustainability_sector_percentile - sustainable_product_industry_percentile",
212
+ "sustainability_subsector_percentile - sustainable_product_industry_percentile",
213
+ "workforce_corr_weighted_sector_percentile - workforce_corr_weighted_industry_percentile",
214
+ "workforce_corr_weighted_subsector_percentile - workforce_corr_weighted_industry_percentile",
215
+ "workforce_positive_corr_sector_percentile - workforce_corr_weighted_industry_percentile",
216
+ "workforce_positive_corr_subsector_percentile - workforce_corr_weighted_industry_percentile",
217
+ "workforce_sector_percentile - workforce_corr_weighted_industry_percentile",
218
+ "workforce_subsector_percentile - workforce_corr_weighted_industry_percentile",
219
+ "workplace_diversity_sector_percentile - workforce_corr_weighted_industry_percentile",
220
+ "workplace_diversity_subsector_percentile - workforce_corr_weighted_industry_percentile",
221
+ "workforce_corr_weighted_sector_percentile - workforce_industry_percentile",
222
+ "workforce_corr_weighted_subsector_percentile - workforce_industry_percentile",
223
+ "workforce_positive_corr_sector_percentile - workforce_industry_percentile",
224
+ "workforce_positive_corr_subsector_percentile - workforce_industry_percentile",
225
+ "workforce_sector_percentile - workforce_industry_percentile",
226
+ "workforce_subsector_percentile - workforce_industry_percentile",
227
+ "workplace_diversity_sector_percentile - workforce_industry_percentile",
228
+ "workplace_diversity_subsector_percentile - workforce_industry_percentile",
229
+ "workforce_positive_corr_sector_percentile - workforce_positive_corr_industry_percentile",
230
+ "workforce_positive_corr_subsector_percentile - workforce_positive_corr_industry_percentile",
231
+ "workforce_corr_weighted_sector_percentile - workforce_positive_corr_industry_percentile",
232
+ "workforce_corr_weighted_subsector_percentile - workforce_positive_corr_industry_percentile",
233
+ "workforce_sector_percentile - workforce_positive_corr_industry_percentile",
234
+ "workforce_subsector_percentile - workforce_positive_corr_industry_percentile",
235
+ "workplace_diversity_sector_percentile - workforce_positive_corr_industry_percentile",
236
+ "workplace_diversity_subsector_percentile - workforce_positive_corr_industry_percentile",
237
+ "workplace_diversity_sector_percentile - workplace_diversity_industry_percentile",
238
+ "workplace_diversity_subsector_percentile - workplace_diversity_industry_percentile",
239
+ "workforce_corr_weighted_sector_percentile - workplace_diversity_industry_percentile",
240
+ "workforce_corr_weighted_subsector_percentile - workplace_diversity_industry_percentile",
241
+ "workforce_positive_corr_sector_percentile - workplace_diversity_industry_percentile",
242
+ "workforce_positive_corr_subsector_percentile - workplace_diversity_industry_percentile",
243
+ "workforce_sector_percentile - workplace_diversity_industry_percentile",
244
+ "workforce_subsector_percentile - workplace_diversity_industry_percentile"
245
+ ]
246
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "template": "group_zscore(ts_delta(winsorize({sector_percentile} - {corr_weighted_sector_percentile}, std=4), 63), industry)",
3
+ "idea": "行业内的时序改善信号。计算ESG对齐差距(清洗后)在过去63天的变化(ts_delta),捕捉'差距正在扩大或缩小'的动态。然后在行业内部进行标准化(group_zscore),聚焦于行业内相对改善或恶化的公司,剥离行业整体趋势的影响。",
4
+ "expression_list": [
5
+ "group_zscore(ts_delta(winsorize(environmental_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
6
+ "group_zscore(ts_delta(winsorize(environmental_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
7
+ "group_zscore(ts_delta(winsorize(environmental_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
8
+ "group_zscore(ts_delta(winsorize(environmental_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
9
+ "group_zscore(ts_delta(winsorize(environmental_sector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
10
+ "group_zscore(ts_delta(winsorize(environmental_subsector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
11
+ "group_zscore(ts_delta(winsorize(employee_compensation_sector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
12
+ "group_zscore(ts_delta(winsorize(employee_compensation_subsector_percentile - environmental_corr_weighted_sector_percentile, std=4), 63), industry)",
13
+ "group_zscore(ts_delta(winsorize(governance_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
14
+ "group_zscore(ts_delta(winsorize(governance_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
15
+ "group_zscore(ts_delta(winsorize(governance_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
16
+ "group_zscore(ts_delta(winsorize(governance_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
17
+ "group_zscore(ts_delta(winsorize(governance_sector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
18
+ "group_zscore(ts_delta(winsorize(governance_subsector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
19
+ "group_zscore(ts_delta(winsorize(anti_pollution_policy_sector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
20
+ "group_zscore(ts_delta(winsorize(anti_pollution_policy_subsector_percentile - governance_corr_weighted_sector_percentile, std=4), 63), industry)",
21
+ "group_zscore(ts_delta(winsorize(social_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
22
+ "group_zscore(ts_delta(winsorize(social_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
23
+ "group_zscore(ts_delta(winsorize(social_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
24
+ "group_zscore(ts_delta(winsorize(social_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
25
+ "group_zscore(ts_delta(winsorize(social_sector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
26
+ "group_zscore(ts_delta(winsorize(social_subsector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
27
+ "group_zscore(ts_delta(winsorize(sustainability_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
28
+ "group_zscore(ts_delta(winsorize(sustainability_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, std=4), 63), industry)",
29
+ "group_zscore(ts_delta(winsorize(sustainability_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
30
+ "group_zscore(ts_delta(winsorize(sustainability_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
31
+ "group_zscore(ts_delta(winsorize(sustainability_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
32
+ "group_zscore(ts_delta(winsorize(sustainability_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
33
+ "group_zscore(ts_delta(winsorize(sustainability_sector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
34
+ "group_zscore(ts_delta(winsorize(sustainability_subsector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
35
+ "group_zscore(ts_delta(winsorize(sustainable_product_sector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
36
+ "group_zscore(ts_delta(winsorize(sustainable_product_subsector_percentile - sustainability_corr_weighted_sector_percentile, std=4), 63), industry)",
37
+ "group_zscore(ts_delta(winsorize(workforce_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
38
+ "group_zscore(ts_delta(winsorize(workforce_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
39
+ "group_zscore(ts_delta(winsorize(workforce_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
40
+ "group_zscore(ts_delta(winsorize(workforce_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
41
+ "group_zscore(ts_delta(winsorize(workforce_sector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
42
+ "group_zscore(ts_delta(winsorize(workforce_subsector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
43
+ "group_zscore(ts_delta(winsorize(workplace_diversity_sector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)",
44
+ "group_zscore(ts_delta(winsorize(workplace_diversity_subsector_percentile - workforce_corr_weighted_sector_percentile, std=4), 63), industry)"
45
+ ]
46
+ }
@@ -0,0 +1,196 @@
1
+ {
2
+ "template": "trade_when(greater(ts_rank({sector_percentile} - {corr_weighted_sector_percentile}, 252), 0.8), signed_power(group_zscore({sector_percentile} - {corr_weighted_sector_percentile}, industry), 1.5), 0)",
3
+ "idea": "事件驱动与尾部增强策略。仅当ESG对齐差距处于自身过去252天的历史高位(前20%,ts_rank > 0.8)时才交易,这代表一种极端的、可能持续的错位状态。交易时,使用行业标准化后的差距(group_zscore),并通过signed_power(1.5)非线性放大极端值的影响,从而集中仓位在信号最强的股票上,中间状态不交易。",
4
+ "expression_list": [
5
+ "trade_when(greater(ts_rank(environmental_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
6
+ "trade_when(greater(ts_rank(environmental_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
7
+ "trade_when(greater(ts_rank(environmental_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
8
+ "trade_when(greater(ts_rank(environmental_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
9
+ "trade_when(greater(ts_rank(environmental_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
10
+ "trade_when(greater(ts_rank(environmental_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
11
+ "trade_when(greater(ts_rank(employee_compensation_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
12
+ "trade_when(greater(ts_rank(employee_compensation_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
13
+ "trade_when(greater(ts_rank(environmental_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
14
+ "trade_when(greater(ts_rank(environmental_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
15
+ "trade_when(greater(ts_rank(environmental_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
16
+ "trade_when(greater(ts_rank(environmental_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
17
+ "trade_when(greater(ts_rank(environmental_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
18
+ "trade_when(greater(ts_rank(environmental_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
19
+ "trade_when(greater(ts_rank(employee_compensation_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
20
+ "trade_when(greater(ts_rank(employee_compensation_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
21
+ "trade_when(greater(ts_rank(environmental_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
22
+ "trade_when(greater(ts_rank(environmental_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
23
+ "trade_when(greater(ts_rank(environmental_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
24
+ "trade_when(greater(ts_rank(environmental_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
25
+ "trade_when(greater(ts_rank(environmental_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
26
+ "trade_when(greater(ts_rank(environmental_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
27
+ "trade_when(greater(ts_rank(employee_compensation_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
28
+ "trade_when(greater(ts_rank(employee_compensation_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
29
+ "trade_when(greater(ts_rank(environmental_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
30
+ "trade_when(greater(ts_rank(environmental_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
31
+ "trade_when(greater(ts_rank(environmental_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
32
+ "trade_when(greater(ts_rank(environmental_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
33
+ "trade_when(greater(ts_rank(environmental_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
34
+ "trade_when(greater(ts_rank(environmental_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
35
+ "trade_when(greater(ts_rank(employee_compensation_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
36
+ "trade_when(greater(ts_rank(employee_compensation_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
37
+ "trade_when(greater(ts_rank(environmental_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
38
+ "trade_when(greater(ts_rank(environmental_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
39
+ "trade_when(greater(ts_rank(environmental_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
40
+ "trade_when(greater(ts_rank(environmental_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
41
+ "trade_when(greater(ts_rank(environmental_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
42
+ "trade_when(greater(ts_rank(environmental_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(environmental_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
43
+ "trade_when(greater(ts_rank(employee_compensation_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
44
+ "trade_when(greater(ts_rank(employee_compensation_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(employee_compensation_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
45
+ "trade_when(greater(ts_rank(governance_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
46
+ "trade_when(greater(ts_rank(governance_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
47
+ "trade_when(greater(ts_rank(governance_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
48
+ "trade_when(greater(ts_rank(governance_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
49
+ "trade_when(greater(ts_rank(governance_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
50
+ "trade_when(greater(ts_rank(governance_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
51
+ "trade_when(greater(ts_rank(anti_pollution_policy_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
52
+ "trade_when(greater(ts_rank(anti_pollution_policy_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
53
+ "trade_when(greater(ts_rank(governance_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
54
+ "trade_when(greater(ts_rank(governance_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
55
+ "trade_when(greater(ts_rank(governance_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
56
+ "trade_when(greater(ts_rank(governance_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
57
+ "trade_when(greater(ts_rank(governance_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
58
+ "trade_when(greater(ts_rank(governance_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
59
+ "trade_when(greater(ts_rank(anti_pollution_policy_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
60
+ "trade_when(greater(ts_rank(anti_pollution_policy_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
61
+ "trade_when(greater(ts_rank(governance_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
62
+ "trade_when(greater(ts_rank(governance_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
63
+ "trade_when(greater(ts_rank(governance_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
64
+ "trade_when(greater(ts_rank(governance_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
65
+ "trade_when(greater(ts_rank(governance_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
66
+ "trade_when(greater(ts_rank(governance_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
67
+ "trade_when(greater(ts_rank(anti_pollution_policy_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
68
+ "trade_when(greater(ts_rank(anti_pollution_policy_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
69
+ "trade_when(greater(ts_rank(governance_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
70
+ "trade_when(greater(ts_rank(governance_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
71
+ "trade_when(greater(ts_rank(governance_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
72
+ "trade_when(greater(ts_rank(governance_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
73
+ "trade_when(greater(ts_rank(governance_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
74
+ "trade_when(greater(ts_rank(governance_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
75
+ "trade_when(greater(ts_rank(anti_pollution_policy_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
76
+ "trade_when(greater(ts_rank(anti_pollution_policy_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
77
+ "trade_when(greater(ts_rank(governance_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
78
+ "trade_when(greater(ts_rank(governance_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
79
+ "trade_when(greater(ts_rank(governance_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
80
+ "trade_when(greater(ts_rank(governance_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
81
+ "trade_when(greater(ts_rank(governance_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
82
+ "trade_when(greater(ts_rank(governance_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(governance_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
83
+ "trade_when(greater(ts_rank(anti_pollution_policy_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
84
+ "trade_when(greater(ts_rank(anti_pollution_policy_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(anti_pollution_policy_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
85
+ "trade_when(greater(ts_rank(social_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
86
+ "trade_when(greater(ts_rank(social_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
87
+ "trade_when(greater(ts_rank(social_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
88
+ "trade_when(greater(ts_rank(social_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
89
+ "trade_when(greater(ts_rank(social_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
90
+ "trade_when(greater(ts_rank(social_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
91
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
92
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
93
+ "trade_when(greater(ts_rank(social_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
94
+ "trade_when(greater(ts_rank(social_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
95
+ "trade_when(greater(ts_rank(social_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
96
+ "trade_when(greater(ts_rank(social_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
97
+ "trade_when(greater(ts_rank(social_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
98
+ "trade_when(greater(ts_rank(social_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
99
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
100
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
101
+ "trade_when(greater(ts_rank(social_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
102
+ "trade_when(greater(ts_rank(social_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
103
+ "trade_when(greater(ts_rank(social_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
104
+ "trade_when(greater(ts_rank(social_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
105
+ "trade_when(greater(ts_rank(social_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
106
+ "trade_when(greater(ts_rank(social_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
107
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
108
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
109
+ "trade_when(greater(ts_rank(social_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
110
+ "trade_when(greater(ts_rank(social_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
111
+ "trade_when(greater(ts_rank(social_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
112
+ "trade_when(greater(ts_rank(social_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
113
+ "trade_when(greater(ts_rank(social_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
114
+ "trade_when(greater(ts_rank(social_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
115
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
116
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
117
+ "trade_when(greater(ts_rank(social_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
118
+ "trade_when(greater(ts_rank(social_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
119
+ "trade_when(greater(ts_rank(social_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
120
+ "trade_when(greater(ts_rank(social_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
121
+ "trade_when(greater(ts_rank(social_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
122
+ "trade_when(greater(ts_rank(social_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(social_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
123
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
124
+ "trade_when(greater(ts_rank(sustainability_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
125
+ "trade_when(greater(ts_rank(sustainability_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
126
+ "trade_when(greater(ts_rank(sustainability_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
127
+ "trade_when(greater(ts_rank(sustainability_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
128
+ "trade_when(greater(ts_rank(sustainability_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
129
+ "trade_when(greater(ts_rank(sustainable_product_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
130
+ "trade_when(greater(ts_rank(sustainable_product_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
131
+ "trade_when(greater(ts_rank(sustainability_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
132
+ "trade_when(greater(ts_rank(sustainability_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
133
+ "trade_when(greater(ts_rank(sustainability_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
134
+ "trade_when(greater(ts_rank(sustainability_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
135
+ "trade_when(greater(ts_rank(sustainable_product_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
136
+ "trade_when(greater(ts_rank(sustainable_product_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
137
+ "trade_when(greater(ts_rank(sustainability_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
138
+ "trade_when(greater(ts_rank(sustainability_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
139
+ "trade_when(greater(ts_rank(sustainability_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
140
+ "trade_when(greater(ts_rank(sustainability_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
141
+ "trade_when(greater(ts_rank(sustainable_product_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
142
+ "trade_when(greater(ts_rank(sustainable_product_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
143
+ "trade_when(greater(ts_rank(sustainability_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
144
+ "trade_when(greater(ts_rank(sustainability_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
145
+ "trade_when(greater(ts_rank(sustainability_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
146
+ "trade_when(greater(ts_rank(sustainability_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
147
+ "trade_when(greater(ts_rank(sustainable_product_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
148
+ "trade_when(greater(ts_rank(sustainable_product_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
149
+ "trade_when(greater(ts_rank(sustainability_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
150
+ "trade_when(greater(ts_rank(sustainability_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
151
+ "trade_when(greater(ts_rank(sustainability_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
152
+ "trade_when(greater(ts_rank(sustainability_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainability_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
153
+ "trade_when(greater(ts_rank(sustainable_product_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
154
+ "trade_when(greater(ts_rank(sustainable_product_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(sustainable_product_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
155
+ "trade_when(greater(ts_rank(workforce_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
156
+ "trade_when(greater(ts_rank(workforce_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
157
+ "trade_when(greater(ts_rank(workforce_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
158
+ "trade_when(greater(ts_rank(workforce_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
159
+ "trade_when(greater(ts_rank(workforce_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
160
+ "trade_when(greater(ts_rank(workforce_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
161
+ "trade_when(greater(ts_rank(workplace_diversity_sector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_sector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
162
+ "trade_when(greater(ts_rank(workplace_diversity_subsector_percentile - workforce_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_subsector_percentile - workforce_corr_weighted_sector_percentile, industry), 1.5), 0)",
163
+ "trade_when(greater(ts_rank(workforce_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
164
+ "trade_when(greater(ts_rank(workforce_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
165
+ "trade_when(greater(ts_rank(workforce_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
166
+ "trade_when(greater(ts_rank(workforce_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
167
+ "trade_when(greater(ts_rank(workforce_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
168
+ "trade_when(greater(ts_rank(workforce_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
169
+ "trade_when(greater(ts_rank(workplace_diversity_sector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_sector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
170
+ "trade_when(greater(ts_rank(workplace_diversity_subsector_percentile - environmental_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_subsector_percentile - environmental_corr_weighted_sector_percentile, industry), 1.5), 0)",
171
+ "trade_when(greater(ts_rank(workforce_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
172
+ "trade_when(greater(ts_rank(workforce_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
173
+ "trade_when(greater(ts_rank(workforce_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
174
+ "trade_when(greater(ts_rank(workforce_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
175
+ "trade_when(greater(ts_rank(workforce_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
176
+ "trade_when(greater(ts_rank(workforce_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
177
+ "trade_when(greater(ts_rank(workplace_diversity_sector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_sector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
178
+ "trade_when(greater(ts_rank(workplace_diversity_subsector_percentile - governance_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_subsector_percentile - governance_corr_weighted_sector_percentile, industry), 1.5), 0)",
179
+ "trade_when(greater(ts_rank(workforce_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
180
+ "trade_when(greater(ts_rank(workforce_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
181
+ "trade_when(greater(ts_rank(workforce_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
182
+ "trade_when(greater(ts_rank(workforce_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
183
+ "trade_when(greater(ts_rank(workforce_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
184
+ "trade_when(greater(ts_rank(workforce_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
185
+ "trade_when(greater(ts_rank(workplace_diversity_sector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_sector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
186
+ "trade_when(greater(ts_rank(workplace_diversity_subsector_percentile - social_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_subsector_percentile - social_corr_weighted_sector_percentile, industry), 1.5), 0)",
187
+ "trade_when(greater(ts_rank(workforce_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
188
+ "trade_when(greater(ts_rank(workforce_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_corr_weighted_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
189
+ "trade_when(greater(ts_rank(workforce_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
190
+ "trade_when(greater(ts_rank(workforce_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_positive_corr_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
191
+ "trade_when(greater(ts_rank(workforce_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
192
+ "trade_when(greater(ts_rank(workforce_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workforce_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
193
+ "trade_when(greater(ts_rank(workplace_diversity_sector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_sector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)",
194
+ "trade_when(greater(ts_rank(workplace_diversity_subsector_percentile - sustainability_corr_weighted_sector_percentile, 252), 0.8), signed_power(group_zscore(workplace_diversity_subsector_percentile - sustainability_corr_weighted_sector_percentile, industry), 1.5), 0)"
195
+ ]
196
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "template": "ts_decay_linear(group_normalize(if_else(greater({sector_percentile} - {corr_weighted_sector_percentile}, 0), multiply({sector_percentile} - {corr_weighted_sector_percentile}, sqrt(ts_mean({market_cap}, 63))), {sector_percentile} - {corr_weighted_sector_percentile}), industry), 5)",
3
+ "idea": "条件性市值加权与多空平衡。核心逻辑是:仅对正差距(ESG表现优于财务重要性)的股票,用其近期平均市值的平方根(sqrt(ts_mean(cap)))放大原始差距,这给予大公司更大的正差距以更多权重(假设大公司错配影响更大)。对负差距股票则保持原值。随后在行业内进行多空平衡(group_normalize),最后用线性衰减(ts_decay_linear)平滑权重、控制换手。",
4
+ "expression_list": []
5
+ }