rqalpha 5.3.9__tar.gz → 5.3.10__tar.gz

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 (207) hide show
  1. {rqalpha-5.3.9/rqalpha.egg-info → rqalpha-5.3.10}/PKG-INFO +1 -1
  2. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/_version.py +3 -3
  3. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/report/report.py +2 -0
  4. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/report/templates/summary.xlsx +0 -0
  5. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py +31 -7
  6. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/portfolio/account.py +4 -0
  7. rqalpha-5.3.10/rqalpha/utils/translations/zh_Hans_CN/LC_MESSAGES/messages.mo +0 -0
  8. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/translations/zh_Hans_CN/LC_MESSAGES/messages.po +33 -22
  9. {rqalpha-5.3.9 → rqalpha-5.3.10/rqalpha.egg-info}/PKG-INFO +1 -1
  10. {rqalpha-5.3.9 → rqalpha-5.3.10}/setup.cfg +1 -1
  11. rqalpha-5.3.9/rqalpha/utils/translations/zh_Hans_CN/LC_MESSAGES/messages.mo +0 -0
  12. {rqalpha-5.3.9 → rqalpha-5.3.10}/CHANGELOG.rst +0 -0
  13. {rqalpha-5.3.9 → rqalpha-5.3.10}/LICENSE +0 -0
  14. {rqalpha-5.3.9 → rqalpha-5.3.10}/MANIFEST.in +0 -0
  15. {rqalpha-5.3.9 → rqalpha-5.3.10}/README.rst +0 -0
  16. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/__init__.py +0 -0
  17. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/__main__.py +0 -0
  18. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/api.py +0 -0
  19. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/apis/__init__.py +0 -0
  20. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/apis/api_abstract.py +0 -0
  21. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/apis/api_base.py +0 -0
  22. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/apis/api_rqdatac.py +0 -0
  23. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/apis/names.py +0 -0
  24. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/__init__.py +0 -0
  25. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/bundle.py +0 -0
  26. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/entry.py +0 -0
  27. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/misc.py +0 -0
  28. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/mod.py +0 -0
  29. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/cmds/run.py +0 -0
  30. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/config.yml +0 -0
  31. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/const.py +0 -0
  32. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/__init__.py +0 -0
  33. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/events.py +0 -0
  34. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/execution_context.py +0 -0
  35. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/executor.py +0 -0
  36. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/global_var.py +0 -0
  37. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/strategy.py +0 -0
  38. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/strategy_context.py +0 -0
  39. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/strategy_loader.py +0 -0
  40. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/core/strategy_universe.py +0 -0
  41. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/__init__.py +0 -0
  42. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/bar_dict_price_board.py +0 -0
  43. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/base_data_source/__init__.py +0 -0
  44. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/base_data_source/adjust.py +0 -0
  45. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/base_data_source/data_source.py +0 -0
  46. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/base_data_source/storage_interface.py +0 -0
  47. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/base_data_source/storages.py +0 -0
  48. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/bundle.py +0 -0
  49. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/data_proxy.py +0 -0
  50. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/data/trading_dates_mixin.py +0 -0
  51. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/environment.py +0 -0
  52. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/IF1706_20161108.csv +0 -0
  53. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/IF_macd.py +0 -0
  54. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/buy_and_hold.py +0 -0
  55. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/data_source/get_csv_module.py +0 -0
  56. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/data_source/import_get_csv_module.py +0 -0
  57. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/data_source/read_csv_as_df.py +0 -0
  58. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/extend_api/rqalpha_mod_extend_api_demo.py +0 -0
  59. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/extend_api/test_extend_api.py +0 -0
  60. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/golden_cross.py +0 -0
  61. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/macd.py +0 -0
  62. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/pair_trading.py +0 -0
  63. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/rsi.py +0 -0
  64. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/run_code_demo.py +0 -0
  65. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/run_file_demo.py +0 -0
  66. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/run_func_demo.py +0 -0
  67. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/subscribe_event.py +0 -0
  68. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/test_pt.py +0 -0
  69. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/examples/turtle.py +0 -0
  70. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/interface.py +0 -0
  71. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/main.py +0 -0
  72. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/__init__.py +0 -0
  73. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/__init__.py +0 -0
  74. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/api/__init__.py +0 -0
  75. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/api/api_future.py +0 -0
  76. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/api/api_stock.py +0 -0
  77. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/component_validator.py +0 -0
  78. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/mod.py +0 -0
  79. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/position_model.py +0 -0
  80. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/position_validator.py +0 -0
  81. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_accounts/validator.py +0 -0
  82. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/__init__.py +0 -0
  83. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/mod.py +0 -0
  84. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/plot/__init__.py +0 -0
  85. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/plot/consts.py +0 -0
  86. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/plot/plot.py +0 -0
  87. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/plot/utils.py +0 -0
  88. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/plot_store.py +0 -0
  89. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/report/__init__.py +0 -0
  90. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_analyser/report/excel_template.py +0 -0
  91. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_progress/__init__.py +0 -0
  92. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_progress/mod.py +0 -0
  93. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/__init__.py +0 -0
  94. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/mod.py +0 -0
  95. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/validators/__init__.py +0 -0
  96. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/validators/cash_validator.py +0 -0
  97. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/validators/is_trading_validator.py +0 -0
  98. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/validators/price_validator.py +0 -0
  99. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_risk/validators/self_trade_validator.py +0 -0
  100. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_scheduler/__init__.py +0 -0
  101. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_scheduler/mod.py +0 -0
  102. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_scheduler/scheduler.py +0 -0
  103. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/__init__.py +0 -0
  104. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/mod.py +0 -0
  105. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/signal_broker.py +0 -0
  106. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/simulation_broker.py +0 -0
  107. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/simulation_event_source.py +0 -0
  108. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/slippage.py +0 -0
  109. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/testing.py +0 -0
  110. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_simulation/validator.py +0 -0
  111. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_transaction_cost/__init__.py +0 -0
  112. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_transaction_cost/deciders.py +0 -0
  113. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/rqalpha_mod_sys_transaction_cost/mod.py +0 -0
  114. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod/utils.py +0 -0
  115. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/mod_config.yml +0 -0
  116. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/__init__.py +0 -0
  117. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/bar.py +0 -0
  118. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/instrument.py +0 -0
  119. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/order.py +0 -0
  120. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/tick.py +0 -0
  121. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/model/trade.py +0 -0
  122. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/portfolio/__init__.py +0 -0
  123. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/portfolio/position.py +0 -0
  124. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/resource/ricequant-logo.png +0 -0
  125. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/user_module.py +0 -0
  126. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/__init__.py +0 -0
  127. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/arg_checker.py +0 -0
  128. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/class_helper.py +0 -0
  129. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/click_helper.py +0 -0
  130. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/concurrent.py +0 -0
  131. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/config.py +0 -0
  132. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/datetime_func.py +0 -0
  133. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/dict_func.py +0 -0
  134. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/exception.py +0 -0
  135. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/functools.py +0 -0
  136. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/i18n.py +0 -0
  137. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/log_capture.py +0 -0
  138. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/logger.py +0 -0
  139. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/package_helper.py +0 -0
  140. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/persisit_helper.py +0 -0
  141. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/repr.py +0 -0
  142. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/risk_free_helper.py +0 -0
  143. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/rq_json.py +0 -0
  144. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/strategy_loader_help.py +0 -0
  145. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/testing/__init__.py +0 -0
  146. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/testing/fixtures.py +0 -0
  147. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/testing/mocking.py +0 -0
  148. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/translations/__init__.py +0 -0
  149. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/translations/zh_Hans_CN/LC_MESSAGES/__init__.py +0 -0
  150. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/translations/zh_Hans_CN/__init__.py +0 -0
  151. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha/utils/typing.py +0 -0
  152. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/SOURCES.txt +0 -0
  153. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/dependency_links.txt +0 -0
  154. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/entry_points.txt +0 -0
  155. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/not-zip-safe +0 -0
  156. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/requires.txt +0 -0
  157. {rqalpha-5.3.9 → rqalpha-5.3.10}/rqalpha.egg-info/top_level.txt +0 -0
  158. {rqalpha-5.3.9 → rqalpha-5.3.10}/setup.py +0 -0
  159. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/__init__.py +0 -0
  160. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/__init__.py +0 -0
  161. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/__init__.py +0 -0
  162. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_accounts/__init__.py +0 -0
  163. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_accounts/test_account_model.py +0 -0
  164. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_accounts/test_futures_settlement_price_type.py +0 -0
  165. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_accounts/test_margin_stocks.py +0 -0
  166. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_accounts/test_position_models.py +0 -0
  167. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_scheduler/__init__.py +0 -0
  168. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_scheduler/test_physical_time.py +0 -0
  169. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_scheduler/test_scheduler.py +0 -0
  170. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/__init__.py +0 -0
  171. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/test_management_fee.py +0 -0
  172. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/test_match.py +0 -0
  173. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/test_signal_broker.py +0 -0
  174. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/test_simulation_broker.py +0 -0
  175. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_simulation/test_simulation_event_source.py +0 -0
  176. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_transaction_cost/__init__.py +0 -0
  177. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/mod/sys_transaction_cost/test_commission_multiplier.py +0 -0
  178. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/test_api_base.py +0 -0
  179. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/test_api_future.py +0 -0
  180. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/test_api_stock.py +0 -0
  181. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/test_config.py +0 -0
  182. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/api_tests/utils.py +0 -0
  183. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_buy_and_hold.py +0 -0
  184. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_delivery.py +0 -0
  185. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_macd.py +0 -0
  186. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_macd_signal.py +0 -0
  187. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_mean_reverting.py +0 -0
  188. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_f_tick_size.py +0 -0
  189. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_buy_and_hold.py +0 -0
  190. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_dual_thrust.py +0 -0
  191. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_pit_tax.py +0 -0
  192. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_scheduler.py +0 -0
  193. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_tick_size.py +0 -0
  194. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_turtle.py +0 -0
  195. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_s_turtle_signal.py +0 -0
  196. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/test_sf_buy_and_hold.py +0 -0
  197. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/__init__.py +0 -0
  198. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_data/__init__.py +0 -0
  199. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_data/test_auto_update_bundle/__init__.py +0 -0
  200. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_data/test_auto_update_bundle/test_auto_update_bundle_mixin.py +0 -0
  201. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_data/test_instrument_mixin.py +0 -0
  202. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_data/test_trading_dates_mixin.py +0 -0
  203. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_mod/__init__.py +0 -0
  204. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_mod/test_sys_simulation/__init__.py +0 -0
  205. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/unittest/test_mod/test_sys_simulation/test_simulation_event_source.py +0 -0
  206. {rqalpha-5.3.9 → rqalpha-5.3.10}/tests/utils.py +0 -0
  207. {rqalpha-5.3.9 → rqalpha-5.3.10}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: rqalpha
3
- Version: 5.3.9
3
+ Version: 5.3.10
4
4
  Summary: Ricequant Algorithm Trading System
5
5
  Home-page: https://github.com/ricequant/rqalpha
6
6
  Author: ricequant
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2024-04-12T18:06:46+0800",
11
+ "date": "2024-04-25T10:32:21+0800",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "9095b0aebd0ed705a38a669b85da16310a714468",
15
- "version": "5.3.9"
14
+ "full-revisionid": "215d9b2f7ef5175ff99ced5555a81ff7295416c2",
15
+ "version": "5.3.10"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18
 
@@ -88,6 +88,8 @@ def _yearly_indicators(
88
88
  data["annual_volatility"].append(risk.annual_volatility)
89
89
  data["max_drawdown"].append(risk.max_drawdown)
90
90
  data["max_drawdown_days"].append((max_dd.end_date - max_dd.start_date).days)
91
+ data["alpha"].append(risk.alpha)
92
+ data["beta"].append(risk.beta)
91
93
  return data
92
94
 
93
95
 
@@ -16,6 +16,7 @@
16
16
  # 详细的授权流程,请联系 public@ricequant.com 获取。
17
17
  import datetime
18
18
  from collections import defaultdict
19
+ from copy import copy
19
20
  from rqalpha.const import MATCHING_TYPE, ORDER_TYPE, POSITION_EFFECT, SIDE
20
21
  from rqalpha.environment import Environment
21
22
  from rqalpha.core.events import EVENT, Event
@@ -131,7 +132,7 @@ class DefaultBarMatcher(AbstractMatcher):
131
132
  if reason:
132
133
  order.mark_rejected(reason)
133
134
  return
134
-
135
+
135
136
  price_board = self._env.price_board
136
137
  if order.type == ORDER_TYPE.LIMIT:
137
138
  if order.side == SIDE.BUY and order.price < deal_price:
@@ -208,6 +209,18 @@ class DefaultBarMatcher(AbstractMatcher):
208
209
  )
209
210
  trade._commission = self._env.get_trade_commission(trade)
210
211
  trade._tax = self._env.get_trade_tax(trade)
212
+
213
+ if order.side == SIDE.BUY and self._slippage_decider.decider.rate != 0:
214
+ # 标的价格经过滑点处理后,账户资金可能不够买入,需要进行验证
215
+ cost_money = instrument.calc_cash_occupation(price, order.quantity, order.position_direction, order.trading_datetime.date())
216
+ cost_money += trade.transaction_cost
217
+ if cost_money > account.cash + order.init_frozen_cash:
218
+ reason = _(u"Order Cancelled: not enough money to buy {order_book_id}, needs {cost_money:.2f}, cash {cash:.2f}").format(
219
+ order_book_id=order_book_id, cost_money=cost_money, cash = account.cash + order.init_frozen_cash
220
+ )
221
+ order.mark_rejected(reason)
222
+ return
223
+
211
224
  order.fill(trade)
212
225
  self._turnover[order.order_book_id] += fill
213
226
 
@@ -344,6 +357,12 @@ class DefaultTickMatcher(AbstractMatcher):
344
357
  order_book_id=order.order_book_id)
345
358
  order.mark_rejected(reason)
346
359
  return
360
+
361
+ # 对价格进行滑点处理
362
+ if instrument.during_call_auction(self._env.calendar_dt):
363
+ price = deal_price
364
+ else:
365
+ price = self._slippage_decider.get_trade_price(order, deal_price)
347
366
 
348
367
  price_board = self._env.price_board
349
368
  if order.type == ORDER_TYPE.LIMIT:
@@ -434,12 +453,6 @@ class DefaultTickMatcher(AbstractMatcher):
434
453
  # 平今的数量
435
454
  ct_amount = account.calc_close_today_amount(order_book_id, fill, order.position_direction, order.position_effect)
436
455
 
437
- # 对价格进行滑点处理
438
- if instrument.during_call_auction(self._env.calendar_dt):
439
- price = deal_price
440
- else:
441
- price = self._slippage_decider.get_trade_price(order, deal_price)
442
-
443
456
  # 成交记录
444
457
  trade = Trade.__from_create__(
445
458
  order_id=order.order_id,
@@ -453,6 +466,17 @@ class DefaultTickMatcher(AbstractMatcher):
453
466
  )
454
467
  trade._commission = self._env.get_trade_commission(trade)
455
468
  trade._tax = self._env.get_trade_tax(trade)
469
+
470
+ if order.side == SIDE.BUY and self._slippage_decider.decider.rate != 0:
471
+ cost_money = instrument.calc_cash_occupation(price, order.quantity, order.position_direction, order.trading_datetime.date())
472
+ cost_money += trade.transaction_cost
473
+ if cost_money > account.cash + order.init_frozen_cash:
474
+ reason = _(u"Order Cancelled: not enough money to buy {order_book_id}, needs {cost_money:.2f}, cash {cash:.2f}").format(
475
+ order_book_id=order_book_id, cost_money=cost_money, cash=account.cash + order.init_frozen_cash
476
+ )
477
+ order.mark_rejected(reason)
478
+ return
479
+
456
480
  order.fill(trade)
457
481
  self._turnover[order.order_book_id] += fill
458
482
 
@@ -345,6 +345,10 @@ class Account(metaclass=AccountMeta):
345
345
  self._management_fees += fee
346
346
  self._total_cash -= fee
347
347
 
348
+ # 如果期货结算结束时 cash 为负数,抛出提醒给到用户
349
+ if self._type == "FUTURE" and self.cash < 0:
350
+ user_system_log.warn(_("Futures account's cash turns negative after settlement"))
351
+
348
352
  # 如果 total_value <= 0 则认为已爆仓,清空仓位,资金归0
349
353
  forced_liquidation = self._env.config.base.forced_liquidation
350
354
  if self.total_value <= 0 and forced_liquidation:
@@ -7,7 +7,7 @@ msgid ""
7
7
  msgstr ""
8
8
  "Project-Id-Version: PROJECT VERSION\n"
9
9
  "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
10
- "POT-Creation-Date: 2024-04-12 15:23+0800\n"
10
+ "POT-Creation-Date: 2024-04-24 13:56+0800\n"
11
11
  "PO-Revision-Date: 2016-10-24 21:20+0800\n"
12
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
  "Language: zh_Hans_CN\n"
@@ -494,8 +494,8 @@ msgstr "基准标的 {} 在回测起始日期 {} 结束日期 {} 间缺失数据
494
494
 
495
495
  #: rqalpha/mod/rqalpha_mod_sys_analyser/mod.py:175
496
496
  msgid ""
497
- "benchmark {} available data start date {} >= backtest start date {} or end"
498
- " date {} <= backtest end date {}"
497
+ "benchmark {} available data start date {} >= backtest start date {} or "
498
+ "end date {} <= backtest end date {}"
499
499
  msgstr "基准标的 {} 的可用行情数据开始日期 {} >= 回测起始日期 {} 或结束日期 {} <= 回测结束日期 {}"
500
500
 
501
501
  #: rqalpha/mod/rqalpha_mod_sys_analyser/mod.py:243
@@ -744,39 +744,46 @@ msgid ""
744
744
  "trade: [{}...]"
745
745
  msgstr "订单创建失败,当前存在可能导致自成交的挂单:[{}...]"
746
746
 
747
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:118
748
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:335
747
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:119
748
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:348
749
749
  #: rqalpha/mod/rqalpha_mod_sys_simulation/signal_broker.py:69
750
750
  msgid ""
751
751
  "Order Cancelled: current security [{order_book_id}] can not be traded in "
752
752
  "listed date [{listed_date}]"
753
753
  msgstr "订单被撤销: [{order_book_id}] 上市首日无法交易"
754
754
 
755
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:125
756
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:165
755
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:126
756
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:166
757
757
  #: rqalpha/mod/rqalpha_mod_sys_simulation/signal_broker.py:86
758
758
  msgid "Order Cancelled: {order_book_id} bar no volume"
759
759
  msgstr "订单被撤销:{order_book_id} 当前无成交量"
760
760
 
761
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:150
761
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:151
762
762
  #: rqalpha/mod/rqalpha_mod_sys_simulation/signal_broker.py:95
763
763
  msgid "Order Cancelled: current bar [{order_book_id}] reach the limit_up price."
764
764
  msgstr "订单被拒单: [{order_book_id}] 已涨停。"
765
765
 
766
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:156
766
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:157
767
767
  #: rqalpha/mod/rqalpha_mod_sys_simulation/signal_broker.py:104
768
768
  msgid "Order Cancelled: current bar [{order_book_id}] reach the limit_down price."
769
769
  msgstr "订单被拒单: [{order_book_id}] 已跌停。"
770
770
 
771
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:178
772
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:417
773
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:567
771
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:179
772
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:436
773
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:591
774
774
  msgid ""
775
775
  "Order Cancelled: market order {order_book_id} volume {order_volume} due "
776
776
  "to volume limit"
777
777
  msgstr "订单被撤销: 订单 [{order_book_id}] 的下单量 {order_volume} 超过了成交量限制。"
778
778
 
779
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:217
779
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:218
780
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:474
781
+ msgid ""
782
+ "Order Cancelled: not enough money to buy {order_book_id}, needs "
783
+ "{cost_money:.2f}, cash {cash:.2f}"
784
+ msgstr "订单创建失败: 可用资金不足。当前资金: {cash:.2f},{order_book_id} 下单所需资金: {cost_money:.2f}"
785
+
786
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:230
780
787
  msgid ""
781
788
  "Order Cancelled: market order {order_book_id} volume {order_volume} is "
782
789
  "larger than {volume_percent_limit} percent of current bar volume, fill "
@@ -785,26 +792,26 @@ msgstr ""
785
792
  "{order_book_id} 下单量 {order_volume} 超过当前 Bar 成交量的 "
786
793
  "{volume_percent_limit}%,实际成交 {filled_volume}"
787
794
 
788
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:343
795
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:356
789
796
  msgid "Order Cancelled: current tick [{order_book_id}] miss market data."
790
797
  msgstr "订单被拒单: [{order_book_id}] 当前缺失市场数据。"
791
798
 
792
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:368
799
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:387
793
800
  msgid "Order Cancelled: current tick [{order_book_id}] reach the limit_up price."
794
801
  msgstr "订单被拒单: [{order_book_id}] 已涨停。"
795
802
 
796
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:374
803
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:393
797
804
  msgid ""
798
805
  "Order Cancelled: current tick [{order_book_id}] reach the limit_down "
799
806
  "price."
800
807
  msgstr "订单被拒单: [{order_book_id}] 已跌停。"
801
808
 
802
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:381
803
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:387
809
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:400
810
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:406
804
811
  msgid "Order Cancelled: [{order_book_id}] has no liquidity."
805
812
  msgstr "合约 [{order_book_id}] 流动性不足,拒单。"
806
813
 
807
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:462
814
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:486
808
815
  #, fuzzy
809
816
  msgid ""
810
817
  "Order Cancelled: market order {order_book_id} volume {order_volume} is "
@@ -814,7 +821,7 @@ msgstr ""
814
821
  "{order_book_id} 下单量 {order_volume} 超过当前 Tick 成交量的 "
815
822
  "{volume_percent_limit}%,实际成交 {filled_volume}"
816
823
 
817
- #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:611
824
+ #: rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py:635
818
825
  msgid ""
819
826
  "Order Cancelled: market order {order_book_id} fill {filled_volume} "
820
827
  "actually"
@@ -916,11 +923,15 @@ msgstr "不合法的账户类型 {}, 请在以下账户类型中选择 {}"
916
923
  msgid "Cash add {}. units {} become to {}"
917
924
  msgstr "入金{}元,份额由{}变动为{}"
918
925
 
919
- #: rqalpha/portfolio/account.py:352
926
+ #: rqalpha/portfolio/account.py:350
927
+ msgid "Futures account's cash turns negative after settlement"
928
+ msgstr "期货账户的现金在结算后变为负数"
929
+
930
+ #: rqalpha/portfolio/account.py:356
920
931
  msgid "Trigger Forced Liquidation, current total_value is 0"
921
932
  msgstr "触发强制清算,当前总权益为 0"
922
933
 
923
- #: rqalpha/portfolio/account.py:502 rqalpha/portfolio/account.py:521
934
+ #: rqalpha/portfolio/account.py:506 rqalpha/portfolio/account.py:525
924
935
  msgid "insufficient cash, current {}, target withdrawal {}"
925
936
  msgstr "现金不足,当前现金 {},目标出金 {}"
926
937
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: rqalpha
3
- Version: 5.3.9
3
+ Version: 5.3.10
4
4
  Summary: Ricequant Algorithm Trading System
5
5
  Home-page: https://github.com/ricequant/rqalpha
6
6
  Author: ricequant
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = rqalpha
3
- version = 5.3.9
3
+ version = 5.3.10
4
4
 
5
5
  [versioneer]
6
6
  VCS = git
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes