Commit 2f187d6c authored by 吕先亚's avatar 吕先亚

update config

parent 955b9c04
......@@ -14,7 +14,7 @@ def insert(datas):
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
x in datas])
return f'''insert into robo_indicator({','.join(__COLUMNS__.keys())}) values {values}'''
return f'''insert ignore into robo_indicator({','.join(__COLUMNS__.keys())}) values {values}'''
@write
......
......@@ -260,6 +260,9 @@ robo-executor: # 执行器相关
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: 2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port: 8080
......@@ -59,15 +59,7 @@ basic: # 基础信息模块
excludes: # 排除的资料彭博ticker
backtest:
- 'FRSTAMP LX Equity' # 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
# - 'TEMASAD LX Equity' # 富蘭克林坦伯頓全球投資系列-亞洲債券基金 美元A(Mdis)股
# - '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)股
# - 'TEMFHYI LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(Mdis)股 -> 20240722起可一般申购
real:
- 'FRSTAMP LX Equity' # 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis-pc)股
# - 'FTSIADU LX Equity' # 富蘭克林坦伯頓全球投資系列-精選收益基金 美元A(Mdis)股
......@@ -212,10 +204,10 @@ reports: # 报告模块相关
- signal-report # 信号报告
# - benckmark-report # benckmark报告
# - combo-report # 持仓对比
- indicators-report # 各种特殊指标报告
- fixed-range-report # 固定区间收益报告
- relative-range-report # 相对区间收益报告
- year-range-report # 单年区间业绩报告
# - indicators-report # 各种特殊指标报告
# - fixed-range-report # 固定区间收益报告
# - relative-range-report # 相对区间收益报告
# - year-range-report # 单年区间业绩报告
# - month-div-rate-report # 月度配息率比较
# - year-div-rate-report # 年度配息率比较
real-daily:
......@@ -226,9 +218,10 @@ reports: # 报告模块相关
email:
receives:
- brody_wu@chifufund.com
- wenwen.tang@thizgroup.com
copies: ${DAILY_EMAIL_COPIES}
subject:
# default: "ROBO6_TAIBEI-实盘版-每日投組推薦_{today}"
# default: "MdisFoF_prr3(實盤)-每日投組推薦_{today}"
rebalance: "MdisFoF_prr3(實盤)-每月投組推薦_{today}"
content:
# default: "Dear All: 附件是今天生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
......@@ -244,8 +237,8 @@ reports: # 报告模块相关
min-date: {days: 30}
- name: asset-pool-report # 基金池
min-date: {days: 30}
- name: combo-report # 持仓报告
min-date: {days: 40}
# - name: combo-report # 持仓报告
# min-date: {days: 40}
- name: mpt-report
min-date: {days: 30}
- name: signal-report
......@@ -265,20 +258,22 @@ reports: # 报告模块相关
subject: "SVROBO6-实盘版-每日监测_{today}"
content: "Dear All: 附件是今天生成的监测数据,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 telan_qian@chifufund.com"
robo-executor: # 执行器相关
use: ${ROBO_EXECUTOR:backtest} # 执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
use: ${ROBO_EXECUTOR:real} # 执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
sync-data: ${SYNC_DATA:on} # 是否开启同步资料数据
backtest: # 回测执行器相关
start-date: 2013-01-02 # 回测起始日期
end-date: 2023-12-29 # 回测截止日期
start-date: 2024-01-02 # 回测起始日期
end-date: 2024-08-26 # 回测截止日期
sealing-period: 10 #调仓封闭期
start-step: ${BACKTEST_START_STEP:1} # 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step: ${BACKTEST_END_STEP:3} # 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
clean-up: on
clean-up: off
real: # 实盘执行器
export: ${EXPORT_ENABLE:on} # 是否开启报告
export: ${EXPORT_ENABLE:off} # 是否开启报告
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: 2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port: 8080
......@@ -59,12 +59,23 @@ basic: # 基础信息模块
excludes: # 排除的资料彭博ticker
backtest:
- 'LCUAGAA ID Equity' # 美盛凱利美國積極成長基金 A 美元 累積
# - 'TEMHYAH LX Equity'
# - 'FKRCX US Equity' # 富蘭克林黃金基金 美元 A(Ydis)
# - '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 美元 累積
# - 'TEMFHAC LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(acc)股 -> 20240722起可一般申购
real:
- 'XXXX LX Equity'
# - 'TEMHYAH LX Equity' # 富蘭克林坦伯頓全球投資系列-歐洲非投資等級債券基金 美元避險A(Mdis)股-H1
- 'LCUAGAA ID Equity' # 美盛凱利美國積極成長基金 A 美元 累積
- '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: # 净值模块
exrate: # 汇率,如果不开启,整个这块注释掉
- from: EUR # 需要转换的货币类型
......@@ -155,14 +166,12 @@ reports: # 报告模块相关
end: 2013-06-24
- start: 2014-09-03
end: 2014-12-16
- start: 2015-05-21
end: 2016-02-11
- start: 2018-09-20
end: 2018-12-24
- start: 2020-02-19
- start: 2015-04-28
end: 2016-01-21
- start: 2018-01-26
end: 2018-10-29
- start: 2020-01-20
end: 2020-03-23
- start: 2022-01-03
end: 2022-10-12
relative-range: # 相对区间收益率
range-dates: # 相对时间周期
- days: 1
......@@ -215,10 +224,10 @@ reports: # 报告模块相关
- brody_wu@chifufund.com
copies: ${DAILY_EMAIL_COPIES}
subject:
# default: "ROBO6_TAIBEI-实盘版-每日投組推薦_{today}"
# default: "SteadyFoF_prr3(實盤)-每日投組推薦_{today}"
rebalance: "SteadyFoF_prr3(實盤)-每月投組推薦_{today}"
content:
# default: "Dear All: 附件是今天生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 telan_qian@chifufund.com"
# default: "Dear All: 附檔為今日投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
rebalance: "Dear All: 附檔為每月投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
daily-monitor:
file-name: svROBO6_monitor
......@@ -256,7 +265,7 @@ robo-executor: # 执行器相关
sync-data: ${SYNC_DATA:on} # 是否开启同步资料数据
backtest: # 回测执行器相关
start-date: 2013-01-02 # 回测起始日期
end-date: 2023-12-29 # 回测截止日期
end-date: 2024-08-26 # 回测截止日期
sealing-period: 10 #调仓封闭期
start-step: ${BACKTEST_START_STEP:1} # 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step: ${BACKTEST_END_STEP:3} # 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
......@@ -265,6 +274,9 @@ robo-executor: # 执行器相关
export: ${EXPORT_ENABLE:on} # 是否开启报告
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: AB088E61-FAB1-4466-B6AD-6E8AE253391E
port: 8081
......
......@@ -249,6 +249,9 @@ robo-executor: # 执行器相关
export: ${EXPORT_ENABLE:on} # 是否开启报告
start-date: 2023-01-01 # 实盘开始时间
include-date: []
web:
guid: 2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port: 8080
......
......@@ -248,6 +248,9 @@ robo-executor: # 执行器相关
export: ${EXPORT_ENABLE:off} # 是否开启报告
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: 2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port: 8080
......
......@@ -261,6 +261,9 @@ robo-executor: # 执行器相关
export: ${EXPORT_ENABLE:off} # 是否开启报告
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: 2CB50688-96F8-4C3E-87AB-6DEE2B4713B1
port: 8080
......
......@@ -59,12 +59,9 @@ basic: # 基础信息模块
excludes: # 排除的资料彭博ticker
backtest:
- 'LCUAGAA ID Equity' # 美盛凱利美國積極成長基金 A 美元 累積
# - 'FKRCX US Equity' # 富蘭克林黃金基金 美元 A(Ydis)
# - 'FTNRACU LX Equity' # 富蘭克林坦伯頓全球投資系列-天然資源基金 美元A(acc)股
# - 'TEMBDAI LX Equity' # 富蘭克林坦伯頓全球投資系列-生技領航基金 A(acc)股
# - 'TEMFHAC LX Equity' # 富蘭克林坦伯頓全球投資系列-公司債基金 美元A(acc)股 -> 20240722起可一般申购
real:
- 'XXXXXXX LX Equity'
- 'ZZZZZZZ LX Equity'
- 'LCUAGAA ID Equity' # 美盛凱利美國積極成長基金 A 美元 累積
navs: # 净值模块
exrate: # 汇率,如果不开启,整个这块注释掉
- from: EUR # 需要转换的货币类型
......@@ -212,10 +209,10 @@ reports: # 报告模块相关
- brody_wu@chifufund.com
copies: ${DAILY_EMAIL_COPIES}
subject:
# default: "USFoF-PRR4-實盤版-每月投組推薦_{today}"
# default: "USFoF_prr4(實盤)-每日投組推薦_{today}"
rebalance: "USFoF_prr4(實盤)-每月投組推薦_{today}"
content:
# default: "Dear All: 附件是每月生成的推薦組合,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 telan_qian@chifufund.com"
# default: "Dear All: 附檔為今日投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
rebalance: "Dear All: 附檔為每月投資組合推薦,請驗收,謝謝! 注>:該郵件為自動發送,如有問題請聯繫矽谷團隊 brody_wu@chifufund.com"
daily-monitor:
file-name: svROBO6_monitor
......@@ -253,7 +250,7 @@ robo-executor: # 执行器相关
sync-data: ${SYNC_DATA:on} # 是否开启同步资料数据
backtest: # 回测执行器相关
start-date: 2013-01-02 # 回测起始日期
end-date: 2023-12-29 # 回测截止日期
end-date: 2024-08-26 # 回测截止日期
sealing-period: 10 #调仓封闭期
start-step: ${BACKTEST_START_STEP:1} # 回测从哪一步开始执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
end-step: ${BACKTEST_END_STEP:3} # 回测从哪一步执行完成后结束执行 1:计算资产池;2:计算最优投组:3:计算再平衡信号以及持仓投组
......@@ -262,6 +259,9 @@ robo-executor: # 执行器相关
export: ${EXPORT_ENABLE:on} # 是否开启报告
start-date: 2023-05-08 # 实盘开始时间
include-date: []
web:
guid: D0FE0BF1-14F8-4350-833C-FD77AEE73E7A
port: 8082
......
......@@ -19,18 +19,18 @@ app = FastAPI()
# 创建 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
def send_email():
async def send_email():
email = get_config('reports.exports.real-daily.email')
receives = email['receives']
copies = email['copies'] if 'copies' in email and email['copies'] is not None else []
recommends = recommend()
subject = email['subject'].format(today=format_date(dt.today()))
recommends = await recommend()
subject = email['subject']['rebalance'].format(today=format_date(dt.date.today()))
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():
......@@ -85,16 +85,17 @@ async def recommend():
'risk': risk,
'rr': round(sum([id_ticker_map[key]['risk'] * weight for key, weight in funds.items()]), 2), 'cp': cp,
'roi': roi}
note = {'last_rec': next_workday(sig['date']).strftime('%Y%m%d')}
note = {'recomman_reason': "推荐理由是:"}
data['note'] = json.dumps(note)
# 计算股债比
stock_weight = int(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}"
stock_weight = int(
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
rec_list.append(portfolios)
return rec_list
else:
return {'msg': '当日投组未产生,待10:00后获取'}
return {'msg': '当日投组未产生,待10:30后获取'}
# 其他异常处理程序
......@@ -113,14 +114,15 @@ async def general_exception_handler(request: Request, exc: Exception):
async def startup_event():
# 异常情况可以重启跑当天投组
current_time = dt.datetime.now()
target_time = dt.time(10, 0)
target_time = dt.time(10, 20)
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, 'cron', day_of_week='0-4', hour=10, minute=00)
scheduler.add_job(send_email, 'cron', day_of_week='0-4', hour=10, minute=5)
scheduler.add_job(main.start, 'cron', day_of_week='0-4', hour=10, minute=20)
scheduler.add_job(send_email, 'cron', day_of_week='0-4', hour=10, minute=25)
scheduler.start()
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'))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment