cnhkmcp 2.1.2__py3-none-any.whl → 2.1.4__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 (101) hide show
  1. cnhkmcp/__init__.py +126 -125
  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/config.json +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/get_knowledgeBase_tool/ace_lib.py +4 -0
  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/knowledge/001_10_Steps_to_Start_on_BRAIN_documentation.json +14 -0
  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/knowledge/001_Intermediate_Pack_-_Improve_your_Alpha_2_2_documentation.json +174 -0
  6. 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/knowledge/001_Intermediate_Pack_-_Understand_Results_1_2_documentation.json +167 -0
  7. 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/knowledge/001_Introduction_to_Alphas_documentation.json +145 -0
  8. 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/knowledge/001_Introduction_to_BRAIN_Expression_Language_documentation.json +107 -0
  9. 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/knowledge/001_WorldQuant_Challenge_documentation.json +56 -0
  10. 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/knowledge/001__Read_this_First_-_Starter_Pack_documentation.json +404 -0
  11. 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/knowledge/002_How_to_choose_the_Simulation_Settings_documentation.json +268 -0
  12. 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/knowledge/002_Simulate_your_first_Alpha_documentation.json +88 -0
  13. 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/knowledge/002__Alpha_Examples_for_Beginners_documentation.json +254 -0
  14. 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/knowledge/002__Alpha_Examples_for_Bronze_Users_documentation.json +114 -0
  15. 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/knowledge/002__Alpha_Examples_for_Silver_Users_documentation.json +79 -0
  16. 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/knowledge/002__How_BRAIN_works_documentation.json +184 -0
  17. 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/knowledge/003_Clear_these_tests_before_submitting_an_Alpha_documentation.json +388 -0
  18. 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/knowledge/003_Parameters_in_the_Simulation_results_documentation.json +243 -0
  19. 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/knowledge/004_Group_Data_Fields_documentation.json +69 -0
  20. 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/knowledge/004_How_to_use_the_Data_Explorer_documentation.json +142 -0
  21. 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/knowledge/004_Model77_dataset_documentation.json +14 -0
  22. 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/knowledge/004_Sentiment1_dataset_documentation.json +14 -0
  23. 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/knowledge/004_Understanding_Data_in_BRAIN_Key_Concepts_and_Tips_documentation.json +182 -0
  24. 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/knowledge/004_Vector_Data_Fields_documentation.json +30 -0
  25. 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/knowledge/005_Crowding_Risk-Neutralized_Alphas_documentation.json +64 -0
  26. 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/knowledge/005_D0_documentation.json +66 -0
  27. 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/knowledge/005_Double_Neutralization_documentation.json +53 -0
  28. 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/knowledge/005_Fast_D1_Documentation_documentation.json +304 -0
  29. 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/knowledge/005_Investability_Constrained_Metrics_documentation.json +129 -0
  30. 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/knowledge/005_Must-read_posts_How_to_improve_your_Alphas_documentation.json +14 -0
  31. 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/knowledge/005_Neutralization_documentation.json +29 -0
  32. 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/knowledge/005_RAM_Risk-Neutralized_Alphas_documentation.json +64 -0
  33. 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/knowledge/005_Risk_Neutralization_Default_setting_documentation.json +75 -0
  34. 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/knowledge/005_Risk_Neutralized_Alphas_documentation.json +171 -0
  35. 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/knowledge/005_Statistical_Risk-Neutralized_Alphas_documentation.json +51 -0
  36. 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/knowledge/006_EUR_TOP2500_Universe_documentation.json +35 -0
  37. 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/knowledge/006_GLB_TOPDIV3000_Universe_documentation.json +48 -0
  38. 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/knowledge/006_Getting_Started_China_Research_for_Consultants_Gold_documentation.json +142 -0
  39. 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/knowledge/006_Getting_started_on_Illiquid_Universes_Gold_documentation.json +46 -0
  40. 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/knowledge/006_Getting_started_with_USA_TOPSP500_universe_Gold_documentation.json +62 -0
  41. 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/knowledge/006_Global_Alphas_Gold_documentation.json +66 -0
  42. 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/knowledge/006_India_Alphas_documentation.json +35 -0
  43. 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/knowledge/007_Consultant_Dos_and_Don_ts_documentation.json +35 -0
  44. 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/knowledge/007_Consultant_Features_documentation.json +239 -0
  45. 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/knowledge/007_Consultant_Simulation_Features_documentation.json +149 -0
  46. 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/knowledge/007_Consultant_Submission_Tests_documentation.json +363 -0
  47. 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/knowledge/007_Finding_Consultant_Alphas_documentation.json +333 -0
  48. 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/knowledge/007_Power_Pool_Alphas_documentation.json +14 -0
  49. 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/knowledge/007_Research_Advisory_Program_documentation.json +35 -0
  50. 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/knowledge/007_Starting_Guide_for_Research_Consultants_documentation.json +14 -0
  51. 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/knowledge/007_Visualization_Tool_documentation.json +99 -0
  52. 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/knowledge/007_Your_Advisor_-_Kunqi_Jiang_documentation.json +53 -0
  53. 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/knowledge/007__Brain_Genius_documentation.json +288 -0
  54. 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/knowledge/007__Single_Dataset_Alphas_documentation.json +41 -0
  55. 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/knowledge/008_Advisory_Theme_Calendar_documentation.json +14 -0
  56. 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/knowledge/008_Multiplier_Rules_documentation.json +14 -0
  57. 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/knowledge/008_Overview_of_Themes_documentation.json +14 -0
  58. 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/knowledge/008_Theme_Calendar_documentation.json +14 -0
  59. 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/knowledge/009_Combo_Expression_documentation.json +272 -0
  60. 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/knowledge/009_Global_SuperAlphas_documentation.json +14 -0
  61. 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/knowledge/009_Helpful_Tips_documentation.json +58 -0
  62. 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/knowledge/009_Selection_Expression_documentation.json +1546 -0
  63. 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/knowledge/009_SuperAlpha_Operators_documentation.json +890 -0
  64. 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/knowledge/009_SuperAlpha_Results_documentation.json +83 -0
  65. 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/knowledge/009_What_is_a_SuperAlpha_documentation.json +261 -0
  66. 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/knowledge/010_BRAIN_API_documentation.json +515 -0
  67. 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/knowledge/010_Documentation_for_ACE_API_Library_Gold_documentation.json +27 -0
  68. 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/knowledge/010__Understanding_simulation_limits_documentation.json +210 -0
  69. 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/knowledge/arithmetic_operators.json +209 -0
  70. 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/knowledge/cross_sectional_operators.json +98 -0
  71. 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/knowledge/group_operators.json +121 -0
  72. 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/knowledge/logical_operators.json +145 -0
  73. 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/knowledge/reduce_operators.json +156 -0
  74. 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/knowledge/special_operators.json +35 -0
  75. 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/knowledge/time_series_operators.json +386 -0
  76. 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/knowledge/transformational_operators.json +61 -0
  77. 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/knowledge/vector_operators.json +38 -0
  78. 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/_manifest.json +302 -0
  79. 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/_meta.json +1 -0
  80. 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
  81. cnhkmcp/untracked/APP/Tranformer/Transformer.py +5 -1
  82. cnhkmcp/untracked/APP/Tranformer/ace_lib.py +4 -0
  83. cnhkmcp/untracked/APP/Tranformer/output/Alpha_candidates.json +6008 -1242
  84. cnhkmcp/untracked/APP/Tranformer/output/Alpha_generated_expressions_error.json +1 -1034
  85. cnhkmcp/untracked/APP/Tranformer/output/Alpha_generated_expressions_success.json +47310 -442
  86. cnhkmcp/untracked/APP/ace_lib.py +4 -0
  87. cnhkmcp/untracked/APP/give_me_idea/ace_lib.py +4 -0
  88. cnhkmcp/untracked/APP/hkSimulator/ace_lib.py +4 -0
  89. cnhkmcp/untracked/APP/simulator/wqb20260107015647.log +57 -0
  90. cnhkmcp/untracked/APP//321/207/342/225/235/320/250/321/205/320/230/320/226/321/204/342/225/225/320/220/321/211/320/221/320/243/321/206/320/261/320/265/ace_lib.py +4 -0
  91. cnhkmcp/untracked/APP//321/207/342/225/235/320/250/321/205/320/230/320/226/321/204/342/225/225/320/220/321/211/320/221/320/243/321/206/320/261/320/265/brain_alpha_inspector.py +2 -2
  92. 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 +4 -0
  93. cnhkmcp/untracked/__init__.py +0 -0
  94. cnhkmcp/untracked/mcp/321/206/320/246/320/227/321/204/342/225/227/342/225/242/321/210/320/276/342/225/221/321/205/320/255/320/253/321/207/320/231/320/2302_/321/205/320/266/320/222/321/206/320/256/320/254/321/205/320/236/320/257/321/207/320/231/320/230/321/205/320/240/320/277/321/205/320/232/320/270/321/204/342/225/225/320/235/321/204/342/225/221/320/226/321/206/342/225/241/320/237/321/210/320/267/320/230/321/205/320/251/320/270/321/205/342/226/221/342/226/222/321/210/320/277/320/245/321/210/342/224/220/320/251/321/204/342/225/225/320/272/platform_functions.py +352 -166
  95. {cnhkmcp-2.1.2.dist-info → cnhkmcp-2.1.4.dist-info}/METADATA +1 -1
  96. cnhkmcp-2.1.4.dist-info/RECORD +190 -0
  97. cnhkmcp-2.1.2.dist-info/RECORD +0 -111
  98. {cnhkmcp-2.1.2.dist-info → cnhkmcp-2.1.4.dist-info}/WHEEL +0 -0
  99. {cnhkmcp-2.1.2.dist-info → cnhkmcp-2.1.4.dist-info}/entry_points.txt +0 -0
  100. {cnhkmcp-2.1.2.dist-info → cnhkmcp-2.1.4.dist-info}/licenses/LICENSE +0 -0
  101. {cnhkmcp-2.1.2.dist-info → cnhkmcp-2.1.4.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,363 @@
1
+ {
2
+ "id": "consultant-submission-tests",
3
+ "title": "Consultant Submission Tests",
4
+ "lastModified": "2025-12-14T10:55:05.173898-05:00",
5
+ "content": [
6
+ {
7
+ "type": "HEADING",
8
+ "value": {
9
+ "level": "1",
10
+ "content": "Alphas excluding CHN region"
11
+ },
12
+ "id": "873bc252-08c5-4008-a38c-80b8d210a2a0"
13
+ },
14
+ {
15
+ "type": "TEXT",
16
+ "value": "<p>The following tests are run till the end of In Sample period.</p>",
17
+ "id": "5ae06de0-7c35-4375-b788-7325c6ce9c16"
18
+ },
19
+ {
20
+ "type": "TABLE",
21
+ "value": {
22
+ "data": [
23
+ [
24
+ "SUBMISSION CRITERIA",
25
+ "THRESHOLDS FOR CONSULTANTS"
26
+ ],
27
+ [
28
+ "Fitness",
29
+ "Greater than 1.5 for Delay 0 alphas and Greater than 1 for Delay 1 alphas"
30
+ ],
31
+ [
32
+ "Sharpe",
33
+ "Greater than 2.69 for Delay 0 and Greater than 1.58 for Delay 1 alphas"
34
+ ],
35
+ [
36
+ "Turnover",
37
+ "Greater than 1% and less than 70%"
38
+ ],
39
+ [
40
+ "Weight",
41
+ "Max weight in any stock < 10%. This measures if sufficient number of stocks are assigned weight for sufficient days in a year. Number varies with simulation universe (Top 3000, Top 2000 etc.)"
42
+ ],
43
+ [
44
+ "Sub universe test",
45
+ "The Sharpe in the sub universe must be higher than at least one threshold. These thresholds scale down sharpe with sub universe size. You can find detailed example below."
46
+ ],
47
+ [
48
+ "Self-correlation",
49
+ "Less than 0.7 PNL series correlation with user's alphas, or a sharpe at least 10% greater than other correlated alphas submitted by user"
50
+ ],
51
+ [
52
+ "Prod-correlation",
53
+ "Same as the Self-correlation criteria but applied to all submitted alphas in BRAIN, not just your own"
54
+ ],
55
+ [
56
+ "Check-IS-Sharpe or IS-Ladder test",
57
+ "In Sample Sharpe for the recent 2, 3, 4...10 years should be above the Sharpe thresholds set up for D1 and D0. Please find detailed information below about the D0 and D1 thresholds and the ladder test"
58
+ ],
59
+ [
60
+ "Bias test",
61
+ "This measures any forward bias in the alpha. This test should not fail for expression alphas. In case any of your expressions fail Bias test, please contact BRAIN Support."
62
+ ]
63
+ ],
64
+ "firstRowIsTableHeader": true,
65
+ "firstColIsHeader": true
66
+ },
67
+ "id": "2f0cc77f-64b5-4ba8-9af2-dcf137ee0dde"
68
+ },
69
+ {
70
+ "type": "HEADING",
71
+ "value": {
72
+ "level": "1",
73
+ "content": "Alphas in CHN region"
74
+ },
75
+ "id": "9337c7e9-3f55-40f8-a034-77e0fae6eb1b"
76
+ },
77
+ {
78
+ "type": "TEXT",
79
+ "value": "<p></p><ul><li>The China market has a high cost of trading, thus requiring higher returns than other regions. Thus the submission criteria are <b>Sharpe &gt;= 2.08, Returns &gt;= 8% and Fitness &gt;= 1.0 for D1; Sharpe &gt;= 3.5, Returns &gt;= 12% and Fitness &gt;= 1.5 for D0</b></li><li>Apart from usual robustness tests such as sub universes, turnover, fitness and weight, there is an additional test exclusive to the China research region: <b>Robust universe test performance</b>: Alphas are considered good if the robust universe component retains at least 40% of the returns and Sharpe of the submission version.</li></ul>",
80
+ "id": "00a82c4a-381e-4b05-acd2-527a9b48fd6e"
81
+ },
82
+ {
83
+ "type": "HEADING",
84
+ "value": {
85
+ "level": "1",
86
+ "content": "ASI Alphas: Robust Universe Performance Test"
87
+ },
88
+ "id": "5a629edc-7815-431e-85b7-0d4c60648320"
89
+ },
90
+ {
91
+ "type": "TEXT",
92
+ "value": "<p></p><p><b>What is Robust Universe Test Criteria?</b></p><p>The ASI research region introduces a new and exclusive robustness assessment: the <b>Robust Universe Test</b>. This test is designed to ensure that Alphas maintain strong, reliable performance even when a more scalable universe is adjusted to better reflect real-world scalability constraints. An Alpha passes the Robust Universe Test if its performance on the adjusted universe retains <b>at least 90%</b> of the returns and Sharpe ratio compared to the original submission version.</p><p><b>Actionable tips to potentially pass Robust Universe Test for ASI Alphas</b><br/> Build Alphas that perform well across a wide, diverse universe, rather than relying on signals from a limited group of stocks. Also, prioritize signals with strong, intuitive economic rationale and broad applicability, rather than those tailored to specific stocks or historical quirks. Before submitting, test your Alpha on various universe configurations to ensure robust performance retention. You can also use visualization function to see how your Alpha performs in different countries/regions; try to submit Alphas that can have performance in various countries/regions rather than just a few countries/regions.</p><p></p>",
93
+ "id": "5b9d8e6e-20b8-4db3-bbc0-d9eac46e5ab7"
94
+ },
95
+ {
96
+ "type": "IMAGE",
97
+ "value": {
98
+ "title": "ASI Alphas.png",
99
+ "width": 617,
100
+ "height": 263,
101
+ "fileSize": 81957,
102
+ "url": "https://api.worldquantbrain.com/content/images/VyUyu7a3WYpKGfw7nwcf1nVP5Zg=/423/original/ASI_Alphas.png"
103
+ },
104
+ "id": "46484d03-f081-4781-9434-1780169b0d5d"
105
+ },
106
+ {
107
+ "type": "TEXT",
108
+ "value": "<p>And try to aim for higher returns and greater margin, as Alphas with stronger performance and wider profit margins are more resilient to real-world investment costs and constraints and are more likely to be selected for deployment.</p>",
109
+ "id": "2704d64d-5eea-4b71-9906-bbbd2d857088"
110
+ },
111
+ {
112
+ "type": "HEADING",
113
+ "value": {
114
+ "level": "1",
115
+ "content": "ASI, JPN, HKG, TWN, KOR Alphas: Investability Sharpe test"
116
+ },
117
+ "id": "991d791c-3108-451e-a2ca-a615bfd3b9ca"
118
+ },
119
+ {
120
+ "type": "TEXT",
121
+ "value": "<p></p><p>Please refer to <a href=\"https://platform.worldquantbrain.com/learn/documentation/advanced-topics/getting-started-investability-constrained-metrics\">Investability Constrained Metrics | WorldQuant BRAIN</a> for details about investability concept and max-trade.</p><p>For ASI, JPN, HKG, TWN, KOR Alphas, they can pass the investability Sharpe test, in either way:</p><ol><li>Set maxtrade=ON</li><li>Set maxtrade=OFF, and ensure \"investability constraint Sharpe\" &gt; \"original Sharpe\" * 0.7</li></ol>",
122
+ "id": "2f1d060b-e423-477c-b82b-626a92160805"
123
+ },
124
+ {
125
+ "type": "HEADING",
126
+ "value": {
127
+ "level": "1",
128
+ "content": "Superalphas"
129
+ },
130
+ "id": "7efa3629-8dcd-4fd0-9f1a-e97169378546"
131
+ },
132
+ {
133
+ "type": "TEXT",
134
+ "value": "<p></p><p>Same submission criteria apply for superalphas as alphas, except turnover. <b>2% &lt;= turnover &lt; 40%</b></p>",
135
+ "id": "4f3c47c7-4c21-46a1-8f47-a809f3029dc8"
136
+ },
137
+ {
138
+ "type": "HEADING",
139
+ "value": {
140
+ "level": "1",
141
+ "content": "Alphas in ILLIQUID_MINVOL1M Universes"
142
+ },
143
+ "id": "3fbe4e90-73f4-4061-9a1c-8947f946c91e"
144
+ },
145
+ {
146
+ "type": "TEXT",
147
+ "value": "<p>The ILLIQUID_MINVOL1M universe contains a basket of illiquid instruments that have a minimum volume of 1 million USD. As illiquid instruments have high slippages, wider bid ask spreads and low volume which is not found in the liquid universes, there is a larger difference in returns and wider price impact when traded compared to liquid universes.</p><p>Thus, the <b>after cost sharpe</b> scores the returns taking into account the above costs of trading.</p><p>An additional condition that the After cost sharpe for most illiquid 50% instruments should be greater than fraction (~52.5%) of original universe after cost sharpe apply to this universe.</p>",
148
+ "id": "0446d47d-2c26-4ade-ae1a-3ada1352ba12"
149
+ },
150
+ {
151
+ "type": "HEADING",
152
+ "value": {
153
+ "level": "1",
154
+ "content": "Self-Correlation"
155
+ },
156
+ "id": "e850090c-69d0-42b6-b926-bf41e99883e2"
157
+ },
158
+ {
159
+ "type": "TEXT",
160
+ "value": "<p>Self correlation tests checks if the submitted alpha is highly correlated to previous submissions made by the user.</p><p>The threshold for correlation is 0.7. In case correlation between submitted alpha and previous submissions is greater than 0.7, below conditions apply:</p>",
161
+ "id": "f4857d83-607d-4204-8ca1-334fbe4e8003"
162
+ },
163
+ {
164
+ "type": "HEADING",
165
+ "value": {
166
+ "level": "1",
167
+ "content": "Weight test"
168
+ },
169
+ "id": "54c9b6bf-8c7c-44f0-9b17-97027f7500e5"
170
+ },
171
+ {
172
+ "type": "TEXT",
173
+ "value": "<p></p><p>Alphas are also tested on the distribution of Alpha <a href=\"https://support.worldquantbrain.com/hc/en-us/articles/4902349883927-Click-here-for-a-list-of-terms-and-their-definitions#:~:text=W-,Weight,-BRAIN\">weights</a> across stocks. Alphas can fail this test if:</p><ul><li><a href=\"https://support.worldquantbrain.com/hc/en-us/community/posts/8394917303575-Why-fundamental-alphas-always-show-Weight-is-too-strongly-concentrated-or-too-few-instruments-are-assigned-weight-\">Too few stocks are assigned</a> weight for significant number of days in a year. Note that assigning zero weights to all stocks at the start of the <a href=\"https://support.worldquantbrain.com/hc/en-us/articles/4902349883927-Click-here-for-a-list-of-terms-and-their-definitions#:~:text=definition.-,Simulation,-Simulation\">simulation</a> does not fail this condition, it only applies after the Alpha starts assigning weights. The exact number of minimum stocks varies with the simulation <a href=\"https://support.worldquantbrain.com/hc/en-us/articles/4902349883927-Click-here-for-a-list-of-terms-and-their-definitions#:~:text=U-,Universe,-Universe\">universe</a>.</li><li>Alpha weight is too concentrated in any one stock. For example, if one stock has 30 percent of all Alpha weight, it will fail this test.</li></ul>",
174
+ "id": "3c6fcd15-a8c9-4e05-a2e9-d06d3a6b5829"
175
+ },
176
+ {
177
+ "type": "HEADING",
178
+ "value": {
179
+ "level": "1",
180
+ "content": "Sub universe"
181
+ },
182
+ "id": "eca3f8a7-f471-4fea-b28b-c7eb69feae4e"
183
+ },
184
+ {
185
+ "type": "TEXT",
186
+ "value": "<p></p><p>For TOPXXX universes:</p><p>subuniverse_sharpe &gt;= 0.75 * sqrt(subuniverse_size / alpha_universe_size) * alpha_sharpe</p><p>For non TOPXXX universes:</p><p>subuniverse_sharpe &gt;= subuniverse_ratio * alpha_sharpe</p><p>where subuniverse_ratio:</p><p>ASI MINVOL1M: 0.295</p><p>USA ILLIQUID_MINVOL1M: 0.41</p><p>EUR ILLIQUID_MINVOL1M: 0.355</p>",
187
+ "id": "07c839e1-b2e4-4deb-b31e-d70fb422d25c"
188
+ },
189
+ {
190
+ "type": "HEADING",
191
+ "value": {
192
+ "level": "1",
193
+ "content": "Check-IS-Sharpe or IS-Ladder test"
194
+ },
195
+ "id": "7521e118-39ad-41ab-a265-86f80d491f42"
196
+ },
197
+ {
198
+ "type": "EQUATION",
199
+ "value": "$$𝑆ℎ𝑎𝑟𝑝𝑒= \\sqrt{250}*𝐼𝑅≈15.8*𝐼𝑅 $$",
200
+ "id": "4e7ba4cc-5861-4096-83c8-7fe58c03f853"
201
+ },
202
+ {
203
+ "type": "EQUATION",
204
+ "value": "$$ 𝐼𝑅=\\frac{𝑎𝑣𝑔(𝑑𝑎𝑖𝑙𝑦 𝑃𝑁𝐿)}{Std𝐷𝑒𝑣(𝑑𝑎𝑖𝑙𝑦 𝑃𝑁𝐿)}$$",
205
+ "id": "15e7197d-0f2d-436a-84d8-d8181bb464e5"
206
+ },
207
+ {
208
+ "type": "TEXT",
209
+ "value": "<p>The Check-IS-Sharpe or IS-Ladder test is an iterative test which compares the average IS performance to a series of benchmarks. Initially, the test examines only the most recent two years of IS data available. With each iteration, an additional year is added to the IS period. For example, in the fourth iteration, the IS ladder test examines the most recent 5 years of IS data and compares the Sharpe from that period to the benchmarks described below.</p><p>Alpha undergoes the IS Sharpe ladder test according to the following logic:</p><ol><li>if Sharpe for the whole history is less than FAIL_THRESHOLD, the test is failed</li><li>Else:</li><li>Start with N_YEARS = 2</li><li>if Sharpe[N_YEARS] &lt; FAIL_THRESHOLD: test FAILED</li><li>else if Sharpe[N_YEARS] &gt; PASS_THRESHOLDS[N_YEARS]: test PASSED</li><li>else if (Sharpe[N_YEARS] &gt; FAIL_THRESHOLD) and (Sharpe[N_YEARS ] &lt; PASS_THRESHOLDS[N_YEARS]): N_YEARS += 1</li><li>Go to step 4 with updated N_YEARS value.</li></ol><p></p><p><b>Thresholds for D1 and D0:</b></p>",
210
+ "id": "3724a9ab-f79f-433e-85a9-30a9fba75437"
211
+ },
212
+ {
213
+ "type": "TABLE",
214
+ "value": {
215
+ "data": [
216
+ [
217
+ "No. YEARS",
218
+ "D1 THRESHOLD",
219
+ "D0 THRESHOLD"
220
+ ],
221
+ [
222
+ "FAIL_THRESHOLD",
223
+ "1.59",
224
+ "2.69"
225
+ ],
226
+ [
227
+ "2 YEARS",
228
+ "2.38",
229
+ "3.96"
230
+ ],
231
+ [
232
+ "3 YEARS",
233
+ "2.38",
234
+ "3.96"
235
+ ],
236
+ [
237
+ "4 YEARS",
238
+ "2.38",
239
+ "3.96"
240
+ ],
241
+ [
242
+ "5 YEARS",
243
+ "2.38",
244
+ "3.96"
245
+ ],
246
+ [
247
+ "6 YEARS",
248
+ "2.22",
249
+ "3.64"
250
+ ],
251
+ [
252
+ "7 YEARS",
253
+ "2.06",
254
+ "3.33"
255
+ ],
256
+ [
257
+ "8 YEARS",
258
+ "1.90",
259
+ "3.17"
260
+ ],
261
+ [
262
+ "9 YEARS",
263
+ "1.74",
264
+ "2.85"
265
+ ],
266
+ [
267
+ "10 YEARS",
268
+ "1.59",
269
+ "2.69"
270
+ ]
271
+ ],
272
+ "firstRowIsTableHeader": true,
273
+ "firstColIsHeader": true
274
+ },
275
+ "id": "0b9db490-749a-40c5-803a-31a4f10e321f"
276
+ },
277
+ {
278
+ "type": "TEXT",
279
+ "value": "<p><b>Note:</b></p><ul><li>Sharpe[N_YEARS] is calculated for most recent N_YEARS years of the IS period</li><li>If the turnover of Alpha is less than 30%, the IS Sharpe Ladder PASS_THRESHOLDS are multiplied by a factor of 0.85. FAIL_THRESHOLD is not multiplied by this factor.</li></ul>",
280
+ "id": "ad24f4df-1db3-42d9-9721-741eded0a256"
281
+ },
282
+ {
283
+ "type": "HEADING",
284
+ "value": {
285
+ "level": "1",
286
+ "content": "Interpreting Status Messages in Simulation Results"
287
+ },
288
+ "id": "e491ac8f-f08f-4f4a-8e5e-a8690e8074a7"
289
+ },
290
+ {
291
+ "type": "TEXT",
292
+ "value": "<p>When “Check Submission” or “Submit Alpha” button is pressed, tests are performed in the order described below. In case Alpha fails any of the tests, respective Test Message is displayed.</p>",
293
+ "id": "c3db7f1f-34da-4ec8-bc5a-fab61d44173a"
294
+ },
295
+ {
296
+ "type": "TABLE",
297
+ "value": {
298
+ "data": [
299
+ [
300
+ "#",
301
+ "TEST RESULT",
302
+ "TEST MESSAGE"
303
+ ],
304
+ [
305
+ "1",
306
+ "Alpha fails checkWeight test",
307
+ "Maximum weight on an instrument is greater than 10% OR Weight is too strongly concentrated or too few instruments are assigned weight."
308
+ ],
309
+ [
310
+ "2",
311
+ "Alpha fails CheckCorr test",
312
+ "Reduce max correlation"
313
+ ],
314
+ [
315
+ "3",
316
+ "Alpha fails 0.75*ISLadder",
317
+ "Improve Sharpe"
318
+ ],
319
+ [
320
+ "4",
321
+ "Alpha clears 0.75*ISLadder , fails 0.85*ISLadder and turnover > 10%",
322
+ "Improve Sharpe or reduce turnover"
323
+ ],
324
+ [
325
+ "5",
326
+ "Alpha clears 0.85*ISLadder, fails 1.0*ISLadder, turnover > 30% and correlation > 0.3",
327
+ "Improve Sharpe or reduce turnover or reduce correlation"
328
+ ],
329
+ [
330
+ "6",
331
+ "Alpha fails fitness test",
332
+ "Improve fitness"
333
+ ],
334
+ [
335
+ "7",
336
+ "Delay 0 Alpha fails checkDelay1Sharpe",
337
+ "Alpha better suited for Delay 1"
338
+ ],
339
+ [
340
+ "8",
341
+ "Alpha fails SubUniverse test",
342
+ "Improve Sharpe in SubUniverse"
343
+ ],
344
+ [
345
+ "9",
346
+ "Most illiquid 50% instruments after cost Sharpe of x is below cutoff of y (z original universe after cost Sharpe)",
347
+ "Improve alpha performance in top illiquid quantile"
348
+ ]
349
+ ],
350
+ "firstRowIsTableHeader": true,
351
+ "firstColIsHeader": true
352
+ },
353
+ "id": "dd75a931-85d3-4bd0-9a95-6303845436d1"
354
+ },
355
+ {
356
+ "type": "TEXT",
357
+ "value": "<ul><li>Example: if an Alpha clears criteria 1, 2 and 3 but fails at criteria 4, recommendation would be “Improve Sharpe or reduce turnover”.</li></ul><p></p>",
358
+ "id": "83bf37c2-0840-4d2b-b617-5ab9d6e07242"
359
+ }
360
+ ],
361
+ "sequence": 10,
362
+ "category": "Consultant Information"
363
+ }