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
a3a72361
Commit
a3a72361
authored
Dec 23, 2022
by
jichao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
625回测
parent
891e922e
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
38 additions
and
11 deletions
+38
-11
datum.py
basic/datum.py
+23
-2
test_case.py
basic/test_case.py
+5
-0
config.yml
config.yml
+10
-9
No files found.
basic/datum.py
View file @
a3a72361
import
json
import
json
from
datetime
import
datetime
as
dt
from
typing
import
List
from
py_jftech
import
component
,
parse_date
,
get_config
,
to_tuple
import
pandas
as
pd
from
py_jftech
import
component
,
parse_date
,
get_config
,
to_tuple
,
autowired
from
api
import
DatumType
,
Datum
,
PortfoliosRisk
from
api
import
DatumType
,
Datum
,
PortfoliosRisk
,
RoboReportor
from
basic.dao
import
robo_base_datum
as
rbd
from
basic.dao
import
robo_base_datum
as
rbd
...
@@ -43,3 +46,21 @@ class DefaultDatum(Datum):
...
@@ -43,3 +46,21 @@ class DefaultDatum(Datum):
if
risk
is
PortfoliosRisk
.
FT9
:
if
risk
is
PortfoliosRisk
.
FT9
:
return
risk3
+
self
.
get_datums
(
type
=
DatumType
.
FUND
,
risk
=
(
4
,
5
))
return
risk3
+
self
.
get_datums
(
type
=
DatumType
.
FUND
,
risk
=
(
4
,
5
))
return
None
return
None
@
component
(
bean_name
=
'funds-report'
)
class
FundReportor
(
RoboReportor
):
@
autowired
def
__init__
(
self
,
datum
:
Datum
=
None
):
self
.
_datum
=
datum
@
property
def
report_name
(
self
)
->
str
:
return
'基金资料'
def
load_report
(
self
,
max_date
=
dt
.
today
(),
min_date
=
None
)
->
List
[
dict
]:
datums
=
self
.
_datum
.
get_datums
(
type
=
DatumType
.
FUND
)
datums
=
pd
.
DataFrame
(
datums
)
datums
=
datums
[[
'id'
,
'ftTicker'
,
'bloombergTicker'
,
'chineseName'
,
'englishName'
,
'lipperKey'
,
'isin'
,
'currency'
,
'risk'
,
'inceptDate'
,
'category'
,
'assetType'
]]
return
datums
.
to_dict
(
'records'
)
basic/test_case.py
View file @
a3a72361
...
@@ -38,6 +38,11 @@ class BasicTest(unittest.TestCase):
...
@@ -38,6 +38,11 @@ class BasicTest(unittest.TestCase):
result
=
report
.
load_report
()
result
=
report
.
load_report
()
logger
.
info
(
to_str
(
result
))
logger
.
info
(
to_str
(
result
))
@
autowired
(
names
=
{
'report'
:
'funds-report'
})
def
test_export_funds
(
self
,
report
:
RoboReportor
=
None
):
result
=
report
.
load_report
()
logger
.
info
(
to_str
(
result
))
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
unittest
.
main
()
unittest
.
main
()
config.yml
View file @
a3a72361
...
@@ -208,17 +208,18 @@ reports: # 报告模块相关
...
@@ -208,17 +208,18 @@ reports: # 报告模块相关
backtest
:
# 回测导出曹策略
backtest
:
# 回测导出曹策略
exist-build
:
on
# 如果报告文件存在,是否重新构建文件
exist-build
:
on
# 如果报告文件存在,是否重新构建文件
save-path
:
${EXPORT_PATH:excels}
# 导出报告文件存放路径,如果以./或者../开头,则会以执行python文件为根目录,如果以/开头,则为系统绝对路径,否则,以项目目录为根目录
save-path
:
${EXPORT_PATH:excels}
# 导出报告文件存放路径,如果以./或者../开头,则会以执行python文件为根目录,如果以/开头,则为系统绝对路径,否则,以项目目录为根目录
file-name
:
${EXPORT_FILENAME:
backtest
}
file-name
:
${EXPORT_FILENAME:
fund_infos
}
include-report
:
# 需要导出的报告类型列表,下面的顺序,也代表了excel中sheet的顺序
include-report
:
# 需要导出的报告类型列表,下面的顺序,也代表了excel中sheet的顺序
-
funds-report
# 基金资料
# - navs-report # 净值报告
# - navs-report # 净值报告
-
hold-report
# 持仓报告
#
- hold-report # 持仓报告
-
signal-report
# 信号报告
#
- signal-report # 信号报告
-
asset-pool-report
# 基金池报告
#
- asset-pool-report # 基金池报告
-
mpt-report
# 最优投组报告
#
- mpt-report # 最优投组报告
-
benckmark-report
# benckmark报告
#
- benckmark-report # benckmark报告
-
indicators-report
# 各种特殊指标报告
#
- indicators-report # 各种特殊指标报告
-
fixed-range-report
# 固定区间收益报告
#
- fixed-range-report # 固定区间收益报告
-
relative-range-report
# 相对区间收益报告
#
- relative-range-report # 相对区间收益报告
robo-executor
:
# 执行器相关
robo-executor
:
# 执行器相关
use
:
${ROBO_EXECUTOR:backtest}
#执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
use
:
${ROBO_EXECUTOR:backtest}
#执行哪个执行器,优先取系统环境变量ROBO_EXECUTOR的值,默认backtest
sync-data
:
${SYNC_DATA:off}
sync-data
:
${SYNC_DATA:off}
...
...
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