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
ce1261ab
Commit
ce1261ab
authored
Jan 04, 2024
by
wenwen.tang
😕
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增投组校验,防止投组全为ft的情况
加入风险等级的判断
parent
f8f83edd
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
2 deletions
+5
-2
checker.py
portfolios/checker.py
+5
-2
No files found.
portfolios/checker.py
View file @
ce1261ab
...
...
@@ -29,10 +29,13 @@ class DefaultPortfoliosChecker(PortfoliosChecker):
# step1: 检查原始投组的customType。检查顺序用列表呈现,依序进行
priority
=
self
.
_config
.
get
(
'custom-type-priority'
)
for
p
in
priority
:
# 找出对应优先级序列的基金列表
keys
=
[
key
for
key
in
portfolios
.
keys
()
if
customType
[
key
]
==
p
]
# 若存在匹配值则执行后跳出循环
if
len
(
keys
)
>
0
:
ids
=
[
fund
[
'id'
]
for
fund
in
funds
if
fund
[
'companyType'
]
!=
list
(
companies
)[
0
]]
# 选取非同公司的、风险等级小于等于原基金的 基金
ids
=
[
fund
[
'id'
]
for
fund
in
funds
if
fund
[
'companyType'
]
!=
list
(
companies
)[
0
]
and
fund
[
'risk'
]
<=
min
(
fund
[
'risk'
]
for
fund
in
funds
if
fund
[
'id'
]
in
keys
)]
best
=
self
.
find_highest_score
(
ids
,
day
)
# 若刚好有一个匹配,直接替换
if
len
(
keys
)
==
1
:
...
...
@@ -42,7 +45,7 @@ class DefaultPortfoliosChecker(PortfoliosChecker):
else
:
# 算分,把分低的替换掉
scores
=
self
.
do_score
(
keys
,
day
)
weight_scores
=
{
key
:
scores
[
key
]
*
portfolios
[
key
]
for
key
in
keys
}
weight_scores
=
{
key
:
scores
[
key
]
*
portfolios
[
key
]
for
key
in
keys
}
lowest
=
min
(
scores
,
key
=
lambda
k
:
weight_scores
[
k
])
portfolios
[
best
]
=
portfolios
[
lowest
]
# 删除原始键
...
...
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