Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
R
robo-dividend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wenwen.tang
robo-dividend
Commits
2f187d6c
Commit
2f187d6c
authored
Aug 30, 2024
by
吕先亚
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update config
parent
955b9c04
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
80 additions
and
59 deletions
+80
-59
robo_indicator.py
asset_pool/dao/robo_indicator.py
+1
-1
config-industryfund.yml
config-industryfund.yml
+3
-0
config-mdis_prr3.yml
config-mdis_prr3.yml
+17
-22
config-stable_prr3.yml
config-stable_prr3.yml
+27
-15
config-svrobo5.yml
config-svrobo5.yml
+3
-0
config-svrobo6.yml
config-svrobo6.yml
+3
-0
config-svrobo_Mdiv_PRR3.yml
config-svrobo_Mdiv_PRR3.yml
+3
-0
config-usmarket_prr4.yml
config-usmarket_prr4.yml
+8
-8
robo_controller.py
web/robo_controller.py
+15
-13
No files found.
asset_pool/dao/robo_indicator.py
View file @
2f187d6c
...
@@ -14,7 +14,7 @@ def insert(datas):
...
@@ -14,7 +14,7 @@ def insert(datas):
values
=
','
.
join
(
values
=
','
.
join
(
[
f
'''({','.join([(f"'{x[j]}'" if j in x and x[j] is not None else 'null') for j in __COLUMNS__.keys()])})'''
for
[
f
'''({','.join([(f"'{x[j]}'" if j in x and x[j] is not None else 'null') for j in __COLUMNS__.keys()])})'''
for
x
in
datas
])
x
in
datas
])
return
f
'''insert into robo_indicator({','.join(__COLUMNS__.keys())}) values {values}'''
return
f
'''insert i
gnore i
nto robo_indicator({','.join(__COLUMNS__.keys())}) values {values}'''
@
write
@
write
...
...
config-industryfund.yml
View file @
2f187d6c
...
@@ -260,6 +260,9 @@ robo-executor: # 执行器相关
...
@@ -260,6 +260,9 @@ robo-executor: # 执行器相关
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port
:
8080
config-mdis_prr3.yml
View file @
2f187d6c
...
@@ -59,15 +59,7 @@ basic: # 基础信息模块
...
@@ -59,15 +59,7 @@ basic: # 基础信息模块
excludes
:
# 排除的资料彭博ticker
excludes
:
# 排除的资料彭博ticker
backtest
:
backtest
:
-
'
FRSTAMP
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
-
'
FRSTAMP
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
# - 'TEMASAD LX Equity' # 富蘭克林坦伯頓全球投資系列-亞洲債券基金 美元A(Mdis)股
# - 'TEMFHYI LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(Mdis)股 -> 20240722起可一般申购
# - 'TEMEAUS LX Equity' # 富蘭克林坦伯頓全球投資系列-新興國家固定收益基金 美元A(Mdis)股
# - 'TEMDAMU LX Equity' # 富蘭克林坦伯頓全球投資系列-新興市場月收益基金美元A穩定月配股
# - 'TEMGINI LX Equity' # 富蘭克林坦伯頓全球投資系列-全球債券基金 美元A(Mdis)股
# - 'TGTRFAD LX Equity' # 富蘭克林坦伯頓全球投資系列-全球債券總報酬基金 美元A(Mdis)股
# - 'LMBADMU ID Equity' # 美盛布蘭迪全球固定收益基金 A 美元 配息
# - 'LGBOAUI ID Equity' # 美盛布蘭迪全球機會固定收益基金 A 美元 配息 (M)
# - 'FTEAMUH LX Equity' # 富蘭克林坦伯頓全球投資系列-歐洲股票收益基金美元避險A(Mdis)股-H1
# - 'TEMHYAD LX Equity' # 富蘭克林坦伯頓全球投資系列-歐洲非投資等級債券基金 歐元A(Mdis)股
real
:
real
:
-
'
FRSTAMP
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
-
'
FRSTAMP
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
# - 'FTSIADU LX Equity' # 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis)股
# - 'FTSIADU LX Equity' # 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis)股
...
@@ -212,10 +204,10 @@ reports: # 报告模块相关
...
@@ -212,10 +204,10 @@ reports: # 报告模块相关
-
signal-report
# 信号报告
-
signal-report
# 信号报告
# - benckmark-report # benckmark报告
# - benckmark-report # benckmark报告
# - combo-report # 持仓对比
# - combo-report # 持仓对比
-
indicators-report
# 各种特殊指标报告
#
- indicators-report # 各种特殊指标报告
-
fixed-range-report
# 固定区间收益报告
#
- fixed-range-report # 固定区间收益报告
-
relative-range-report
# 相对区间收益报告
#
- relative-range-report # 相对区间收益报告
-
year-range-report
# 单年区间业绩报告
#
- year-range-report # 单年区间业绩报告
# - month-div-rate-report # 月度配息率比较
# - month-div-rate-report # 月度配息率比较
# - year-div-rate-report # 年度配息率比较
# - year-div-rate-report # 年度配息率比较
real-daily
:
real-daily
:
...
@@ -226,9 +218,10 @@ reports: # 报告模块相关
...
@@ -226,9 +218,10 @@ reports: # 报告模块相关
email
:
email
:
receives
:
receives
:
-
brody_wu@chifufund.com
-
brody_wu@chifufund.com
-
wenwen.tang@thizgroup.com
copies
:
${DAILY_EMAIL_COPIES}
copies
:
${DAILY_EMAIL_COPIES}
subject
:
subject
:
# default: "
ROBO6_TAIBEI-实盘版
-每日投組推薦_{today}"
# default: "
MdisFoF_prr3(實盤)
-每日投組推薦_{today}"
rebalance
:
"
MdisFoF_prr3(實盤)-每月投組推薦_{today}"
rebalance
:
"
MdisFoF_prr3(實盤)-每月投組推薦_{today}"
content
:
content
:
# default: "Dear All: 附件是今天生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
# default: "Dear All: 附件是今天生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
...
@@ -244,8 +237,8 @@ reports: # 报告模块相关
...
@@ -244,8 +237,8 @@ reports: # 报告模块相关
min-date
:
{
days
:
30
}
min-date
:
{
days
:
30
}
-
name
:
asset-pool-report
# 基金池
-
name
:
asset-pool-report
# 基金池
min-date
:
{
days
:
30
}
min-date
:
{
days
:
30
}
-
name
:
combo-report
# 持仓报告
#
- name: combo-report # 持仓报告
min-date
:
{
days
:
40
}
#
min-date: {days: 40}
-
name
:
mpt-report
-
name
:
mpt-report
min-date
:
{
days
:
30
}
min-date
:
{
days
:
30
}
-
name
:
signal-report
-
name
:
signal-report
...
@@ -265,20 +258,22 @@ reports: # 报告模块相关
...
@@ -265,20 +258,22 @@ reports: # 报告模块相关
subject
:
"
SVROBO6-实盘版-每日监测_{today}"
subject
:
"
SVROBO6-实盘版-每日监测_{today}"
content
:
"
Dear
All:
附件是今天生成的监测数据,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
telan_qian@chifufund.com"
content
:
"
Dear
All:
附件是今天生成的监测数据,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
telan_qian@chifufund.com"
robo-executor
:
# 执行器相关
robo-executor
:
# 执行器相关
use
:
${ROBO_EXECUTOR:
backtest
}
# 执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
use
:
${ROBO_EXECUTOR:
real
}
# 执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
backtest
:
# 回测执行器相关
backtest
:
# 回测执行器相关
start-date
:
20
13
-01-02
# 回测起始日期
start-date
:
20
24
-01-02
# 回测起始日期
end-date
:
202
3-12-29
# 回测截止日期
end-date
:
202
4-08-26
# 回测截止日期
sealing-period
:
10
#调仓封闭期
sealing-period
:
10
#调仓封闭期
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
clean-up
:
o
n
clean-up
:
o
ff
real
:
# 实盘执行器
real
:
# 实盘执行器
export
:
${EXPORT_ENABLE:o
n
}
# 是否开启报告
export
:
${EXPORT_ENABLE:o
ff
}
# 是否开启报告
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port
:
8080
config-stable_prr3.yml
View file @
2f187d6c
...
@@ -59,12 +59,23 @@ basic: # 基础信息模块
...
@@ -59,12 +59,23 @@ basic: # 基础信息模块
excludes
:
# 排除的资料彭博ticker
excludes
:
# 排除的资料彭博ticker
backtest
:
backtest
:
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
# - 'TEMHYAH LX Equity'
-
'
TEMASAA
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-亞洲債券基金 美元A(acc)股
# - 'FKRCX US Equity' # 富蘭克林黃金基金 美元 A(Ydis)
-
'
TEMEMAU
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-新興國家固定收益基金 美元A(acc)股
# - 'TEMHYAH LX Equity' # 富蘭克林坦伯頓全球投資系列-歐洲非投資等級債券基金 美元避險A(Mdis)股-H1
-
'
FTGBFAC
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球債券基金 美元A(acc)股
-
'
TGTRFAA
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球債券總報酬基金 美元A(acc)股
-
'
TGHYACU
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球非投資等級債券基金美元A(acc)股
-
'
LEGOUAA
ID
Equity'
# 美盛布蘭迪全球固定收益基金 A 美元 累積
-
'
LGBOAAU
ID
Equity'
# 美盛布蘭迪全球機會固定收益基金 A 美元 累積
# - 'TEMFHAC LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(acc)股 -> 20240722起可一般申购
real
:
real
:
-
'
XXXX
LX
Equity'
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
# - 'TEMHYAH LX Equity' # 富蘭克林坦伯頓全球投資系列-歐洲非投資等級債券基金 美元避險A(Mdis)股-H1
-
'
TEMASAA
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-亞洲債券基金 美元A(acc)股
-
'
TEMEMAU
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-新興國家固定收益基金 美元A(acc)股
-
'
FTGBFAC
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球債券基金 美元A(acc)股
-
'
TGTRFAA
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球債券總報酬基金 美元A(acc)股
-
'
TGHYACU
LX
Equity'
# 富蘭克林坦伯頓全球投資系列-全球非投資等級債券基金美元A(acc)股
-
'
LEGOUAA
ID
Equity'
# 美盛布蘭迪全球固定收益基金 A 美元 累積
-
'
LGBOAAU
ID
Equity'
# 美盛布蘭迪全球機會固定收益基金 A 美元 累積
navs
:
# 净值模块
navs
:
# 净值模块
exrate
:
# 汇率,如果不开启,整个这块注释掉
exrate
:
# 汇率,如果不开启,整个这块注释掉
-
from
:
EUR
# 需要转换的货币类型
-
from
:
EUR
# 需要转换的货币类型
...
@@ -155,14 +166,12 @@ reports: # 报告模块相关
...
@@ -155,14 +166,12 @@ reports: # 报告模块相关
end
:
2013-06-24
end
:
2013-06-24
-
start
:
2014-09-03
-
start
:
2014-09-03
end
:
2014-12-16
end
:
2014-12-16
-
start
:
2015-0
5-21
-
start
:
2015-0
4-28
end
:
2016-0
2-1
1
end
:
2016-0
1-2
1
-
start
:
2018-0
9-20
-
start
:
2018-0
1-26
end
:
2018-1
2-24
end
:
2018-1
0-29
-
start
:
2020-0
2-19
-
start
:
2020-0
1-20
end
:
2020-03-23
end
:
2020-03-23
-
start
:
2022-01-03
end
:
2022-10-12
relative-range
:
# 相对区间收益率
relative-range
:
# 相对区间收益率
range-dates
:
# 相对时间周期
range-dates
:
# 相对时间周期
-
days
:
1
-
days
:
1
...
@@ -215,10 +224,10 @@ reports: # 报告模块相关
...
@@ -215,10 +224,10 @@ reports: # 报告模块相关
-
brody_wu@chifufund.com
-
brody_wu@chifufund.com
copies
:
${DAILY_EMAIL_COPIES}
copies
:
${DAILY_EMAIL_COPIES}
subject
:
subject
:
# default: "
ROBO6_TAIBEI-实盘版
-每日投組推薦_{today}"
# default: "
SteadyFoF_prr3(實盤)
-每日投組推薦_{today}"
rebalance
:
"
SteadyFoF_prr3(實盤)-每月投組推薦_{today}"
rebalance
:
"
SteadyFoF_prr3(實盤)-每月投組推薦_{today}"
content
:
content
:
# default: "Dear All: 附
件是今天生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 telan_qian
@chifufund.com"
# default: "Dear All: 附
檔為今日投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu
@chifufund.com"
rebalance
:
"
Dear
All:
附檔為每月投資組合推薦,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
brody_wu@chifufund.com"
rebalance
:
"
Dear
All:
附檔為每月投資組合推薦,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
brody_wu@chifufund.com"
daily-monitor
:
daily-monitor
:
file-name
:
svROBO6_monitor
file-name
:
svROBO6_monitor
...
@@ -256,7 +265,7 @@ robo-executor: # 执行器相关
...
@@ -256,7 +265,7 @@ robo-executor: # 执行器相关
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
backtest
:
# 回测执行器相关
backtest
:
# 回测执行器相关
start-date
:
2013-01-02
# 回测起始日期
start-date
:
2013-01-02
# 回测起始日期
end-date
:
202
3-12-29
# 回测截止日期
end-date
:
202
4-08-26
# 回测截止日期
sealing-period
:
10
#调仓封闭期
sealing-period
:
10
#调仓封闭期
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
...
@@ -265,6 +274,9 @@ robo-executor: # 执行器相关
...
@@ -265,6 +274,9 @@ robo-executor: # 执行器相关
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
AB088E61-FAB1-4466-B6AD-6E8AE253391E
port
:
8081
...
...
config-svrobo5.yml
View file @
2f187d6c
...
@@ -249,6 +249,9 @@ robo-executor: # 执行器相关
...
@@ -249,6 +249,9 @@ robo-executor: # 执行器相关
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
start-date
:
2023-01-01
# 实盘开始时间
start-date
:
2023-01-01
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port
:
8080
...
...
config-svrobo6.yml
View file @
2f187d6c
...
@@ -248,6 +248,9 @@ robo-executor: # 执行器相关
...
@@ -248,6 +248,9 @@ robo-executor: # 执行器相关
export
:
${EXPORT_ENABLE:off}
# 是否开启报告
export
:
${EXPORT_ENABLE:off}
# 是否开启报告
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port
:
8080
...
...
config-svrobo_Mdiv_PRR3.yml
View file @
2f187d6c
...
@@ -261,6 +261,9 @@ robo-executor: # 执行器相关
...
@@ -261,6 +261,9 @@ robo-executor: # 执行器相关
export
:
${EXPORT_ENABLE:off}
# 是否开启报告
export
:
${EXPORT_ENABLE:off}
# 是否开启报告
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port
:
8080
...
...
config-usmarket_prr4.yml
View file @
2f187d6c
...
@@ -59,12 +59,9 @@ basic: # 基础信息模块
...
@@ -59,12 +59,9 @@ basic: # 基础信息模块
excludes
:
# 排除的资料彭博ticker
excludes
:
# 排除的资料彭博ticker
backtest
:
backtest
:
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
# - 'FKRCX US Equity' # 富蘭克林黃金基金 美元 A(Ydis)
# - 'TEMFHAC LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(acc)股 -> 20240722起可一般申购
# - 'FTNRACU LX Equity' # 富蘭克林坦伯頓全球投資系列-天然資源基金 美元A(acc)股
# - 'TEMBDAI LX Equity' # 富蘭克林坦伯頓全球投資系列-生技領航基金 A(acc)股
real
:
real
:
-
'
XXXXXXX
LX
Equity'
-
'
LCUAGAA
ID
Equity'
# 美盛凱利美國積極成長基金 A 美元 累積
-
'
ZZZZZZZ
LX
Equity'
navs
:
# 净值模块
navs
:
# 净值模块
exrate
:
# 汇率,如果不开启,整个这块注释掉
exrate
:
# 汇率,如果不开启,整个这块注释掉
-
from
:
EUR
# 需要转换的货币类型
-
from
:
EUR
# 需要转换的货币类型
...
@@ -212,10 +209,10 @@ reports: # 报告模块相关
...
@@ -212,10 +209,10 @@ reports: # 报告模块相关
-
brody_wu@chifufund.com
-
brody_wu@chifufund.com
copies
:
${DAILY_EMAIL_COPIES}
copies
:
${DAILY_EMAIL_COPIES}
subject
:
subject
:
# default: "USFoF
-PRR4-實盤版-每月
投組推薦_{today}"
# default: "USFoF
_prr4(實盤)-每日
投組推薦_{today}"
rebalance
:
"
USFoF_prr4(實盤)-每月投組推薦_{today}"
rebalance
:
"
USFoF_prr4(實盤)-每月投組推薦_{today}"
content
:
content
:
# default: "Dear All: 附
件是每月生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 telan_qian
@chifufund.com"
# default: "Dear All: 附
檔為今日投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu
@chifufund.com"
rebalance
:
"
Dear
All:
附檔為每月投資組合推薦,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
brody_wu@chifufund.com"
rebalance
:
"
Dear
All:
附檔為每月投資組合推薦,請驗收,謝謝!
注>:該郵件為自動發送,如有問題請聯繫矽谷團隊
brody_wu@chifufund.com"
daily-monitor
:
daily-monitor
:
file-name
:
svROBO6_monitor
file-name
:
svROBO6_monitor
...
@@ -253,7 +250,7 @@ robo-executor: # 执行器相关
...
@@ -253,7 +250,7 @@ robo-executor: # 执行器相关
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
sync-data
:
${SYNC_DATA:on}
# 是否开启同步资料数据
backtest
:
# 回测执行器相关
backtest
:
# 回测执行器相关
start-date
:
2013-01-02
# 回测起始日期
start-date
:
2013-01-02
# 回测起始日期
end-date
:
202
3-12-29
# 回测截止日期
end-date
:
202
4-08-26
# 回测截止日期
sealing-period
:
10
#调仓封闭期
sealing-period
:
10
#调仓封闭期
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
start-step
:
${BACKTEST_START_STEP:1}
# 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step
:
${BACKTEST_END_STEP:3}
# 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
...
@@ -262,6 +259,9 @@ robo-executor: # 执行器相关
...
@@ -262,6 +259,9 @@ robo-executor: # 执行器相关
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
export
:
${EXPORT_ENABLE:on}
# 是否开启报告
start-date
:
2023-05-08
# 实盘开始时间
start-date
:
2023-05-08
# 实盘开始时间
include-date
:
[]
include-date
:
[]
web
:
guid
:
D0FE0BF1-14F8-4350-833C-FD77AEE73E7A
port
:
8082
...
...
web/robo_controller.py
View file @
2f187d6c
...
@@ -19,18 +19,18 @@ app = FastAPI()
...
@@ -19,18 +19,18 @@ app = FastAPI()
# 创建 AsyncIOScheduler 实例
# 创建 AsyncIOScheduler 实例
scheduler
=
AsyncIOScheduler
()
scheduler
=
AsyncIOScheduler
()
REC_GID
=
'AB088E61-FAB1-4466-B6AD-6E8AE253391E'
REC_GID
=
get_config
(
'web.guid'
)
fund_infos
,
cp
,
roi
,
risk
=
None
,
None
,
None
,
None
fund_infos
,
cp
,
roi
,
risk
=
None
,
None
,
None
,
None
def
send_email
():
async
def
send_email
():
email
=
get_config
(
'reports.exports.real-daily.email'
)
email
=
get_config
(
'reports.exports.real-daily.email'
)
receives
=
email
[
'receives'
]
receives
=
email
[
'receives'
]
copies
=
email
[
'copies'
]
if
'copies'
in
email
and
email
[
'copies'
]
is
not
None
else
[]
copies
=
email
[
'copies'
]
if
'copies'
in
email
and
email
[
'copies'
]
is
not
None
else
[]
recommends
=
recommend
()
recommends
=
await
recommend
()
subject
=
email
[
'subject'
]
.
format
(
today
=
format_date
(
dt
.
today
()))
subject
=
email
[
'subject'
]
[
'rebalance'
]
.
format
(
today
=
format_date
(
dt
.
date
.
today
()))
content
=
json
.
dumps
(
recommends
)
content
=
json
.
dumps
(
recommends
)
sendmail
(
receives
=
receives
,
copies
=
copies
,
subject
=
subject
,
content
=
content
)
sendmail
(
receives
=
receives
,
copies
=
copies
,
subject
=
subject
,
content
=
content
,
attach_paths
=
None
)
def
get_today_rec
():
def
get_today_rec
():
...
@@ -85,16 +85,17 @@ async def recommend():
...
@@ -85,16 +85,17 @@ async def recommend():
'risk'
:
risk
,
'risk'
:
risk
,
'rr'
:
round
(
sum
([
id_ticker_map
[
key
][
'risk'
]
*
weight
for
key
,
weight
in
funds
.
items
()]),
2
),
'cp'
:
cp
,
'rr'
:
round
(
sum
([
id_ticker_map
[
key
][
'risk'
]
*
weight
for
key
,
weight
in
funds
.
items
()]),
2
),
'cp'
:
cp
,
'roi'
:
roi
}
'roi'
:
roi
}
note
=
{
'
last_rec'
:
next_workday
(
sig
[
'date'
])
.
strftime
(
'
%
Y
%
m
%
d'
)
}
note
=
{
'
recomman_reason'
:
"推荐理由是:"
}
data
[
'note'
]
=
json
.
dumps
(
note
)
data
[
'note'
]
=
json
.
dumps
(
note
)
# 计算股债比
# 计算股债比
stock_weight
=
int
(
sum
(
weight
*
100
for
key
,
weight
in
funds
.
items
()
if
id_ticker_map
[
key
][
'category'
]
==
'STOCK'
))
stock_weight
=
int
(
data
[
"p_note"
]
=
f
"{stock_weight}:{100-stock_weight}"
sum
(
weight
*
100
for
key
,
weight
in
funds
.
items
()
if
id_ticker_map
[
key
][
'category'
]
==
'STOCK'
))
data
[
"p_note"
]
=
f
"{stock_weight}:{100 - stock_weight}"
portfolios
[
'data'
]
=
data
portfolios
[
'data'
]
=
data
rec_list
.
append
(
portfolios
)
rec_list
.
append
(
portfolios
)
return
rec_list
return
rec_list
else
:
else
:
return
{
'msg'
:
'当日投组未产生,待10:
0
0后获取'
}
return
{
'msg'
:
'当日投组未产生,待10:
3
0后获取'
}
# 其他异常处理程序
# 其他异常处理程序
...
@@ -113,14 +114,15 @@ async def general_exception_handler(request: Request, exc: Exception):
...
@@ -113,14 +114,15 @@ async def general_exception_handler(request: Request, exc: Exception):
async
def
startup_event
():
async
def
startup_event
():
# 异常情况可以重启跑当天投组
# 异常情况可以重启跑当天投组
current_time
=
dt
.
datetime
.
now
()
current_time
=
dt
.
datetime
.
now
()
target_time
=
dt
.
time
(
10
,
0
)
target_time
=
dt
.
time
(
10
,
2
0
)
if
current_time
.
time
()
>
target_time
:
if
current_time
.
time
()
>
target_time
:
# await send_email()
scheduler
.
add_job
(
main
.
start
,
trigger
=
DateTrigger
(
run_date
=
current_time
))
scheduler
.
add_job
(
main
.
start
,
trigger
=
DateTrigger
(
run_date
=
current_time
))
# 开启定时任务,执行实盘
# 开启定时任务,执行实盘
scheduler
.
add_job
(
main
.
start
,
'cron'
,
day_of_week
=
'0-4'
,
hour
=
10
,
minute
=
0
0
)
scheduler
.
add_job
(
main
.
start
,
'cron'
,
day_of_week
=
'0-4'
,
hour
=
10
,
minute
=
2
0
)
scheduler
.
add_job
(
send_email
,
'cron'
,
day_of_week
=
'0-4'
,
hour
=
10
,
minute
=
5
)
scheduler
.
add_job
(
send_email
,
'cron'
,
day_of_week
=
'0-4'
,
hour
=
10
,
minute
=
2
5
)
scheduler
.
start
()
scheduler
.
start
()
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
uvicorn
.
run
(
"robo_controller:app"
,
host
=
"0.0.0.0"
,
port
=
8080
)
uvicorn
.
run
(
"robo_controller:app"
,
host
=
"0.0.0.0"
,
port
=
get_config
(
'web.port'
)
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment