Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
A
alpha-mind
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
Dr.李
alpha-mind
Commits
139bddec
Commit
139bddec
authored
Jan 23, 2018
by
Dr.李
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update models to store formulas
parent
546b263a
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
21 additions
and
15 deletions
+21
-15
data_preparing.py
alphamind/model/data_preparing.py
+5
-5
linearmodel.py
alphamind/model/linearmodel.py
+6
-5
modelbase.py
alphamind/model/modelbase.py
+6
-1
treemodel.py
alphamind/model/treemodel.py
+4
-4
No files found.
alphamind/model/data_preparing.py
View file @
139bddec
...
...
@@ -402,7 +402,7 @@ if __name__ == '__main__':
universe
=
Universe
(
'zz500'
,
[
'hs300'
,
'zz500'
])
neutralized_risk
=
[
'SIZE'
]
res
=
fetch_predict_phase
(
engine
,
[
'ep_q'
],
'2018-01-08
'
,
'2012-01-05
'
,
'5b'
,
universe
,
16
,
...
...
alphamind/model/linearmodel.py
View file @
139bddec
...
...
@@ -32,8 +32,9 @@ class ConstLinearModel(ModelBase):
def
__init__
(
self
,
features
:
list
=
None
,
weights
:
np
.
ndarray
=
None
):
super
()
.
__init__
(
features
)
weights
:
np
.
ndarray
=
None
,
**
kwargs
):
super
()
.
__init__
(
features
,
**
kwargs
)
if
features
is
not
None
and
weights
is
not
None
:
pyFinAssert
(
len
(
features
)
==
len
(
weights
),
ValueError
,
...
...
@@ -57,7 +58,7 @@ class ConstLinearModel(ModelBase):
class
LinearRegression
(
ModelBase
):
def
__init__
(
self
,
features
:
list
=
None
,
fit_intercept
:
bool
=
False
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
LinearRegressionImpl
(
fit_intercept
=
fit_intercept
,
**
kwargs
)
self
.
trained_time
=
None
...
...
@@ -85,7 +86,7 @@ class LinearRegression(ModelBase):
class
LassoRegression
(
ModelBase
):
def
__init__
(
self
,
alpha
=
0.01
,
features
:
list
=
None
,
fit_intercept
:
bool
=
False
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
Lasso
(
alpha
=
alpha
,
fit_intercept
=
fit_intercept
,
**
kwargs
)
self
.
trained_time
=
None
...
...
@@ -113,7 +114,7 @@ class LassoRegression(ModelBase):
class
LogisticRegression
(
ModelBase
):
def
__init__
(
self
,
features
:
list
=
None
,
fit_intercept
:
bool
=
False
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
LogisticRegressionImpl
(
fit_intercept
=
fit_intercept
,
**
kwargs
)
def
save
(
self
)
->
dict
:
...
...
alphamind/model/modelbase.py
View file @
139bddec
...
...
@@ -15,10 +15,13 @@ from alphamind.utilities import decode
class
ModelBase
(
metaclass
=
abc
.
ABCMeta
):
def
__init__
(
self
,
features
:
list
=
None
):
def
__init__
(
self
,
features
:
list
=
None
,
formulas
:
dict
=
None
,
**
kwargs
):
if
features
is
not
None
:
self
.
features
=
list
(
features
)
else
:
self
.
features
=
formulas
self
.
impl
=
None
self
.
formulas
=
formulas
self
.
trained_time
=
None
def
fit
(
self
,
x
:
np
.
ndarray
,
y
:
np
.
ndarray
):
...
...
@@ -43,6 +46,7 @@ class ModelBase(metaclass=abc.ABCMeta):
features
=
list
(
self
.
features
),
trained_time
=
self
.
trained_time
,
desc
=
encode
(
self
.
impl
),
formulas
=
encode
(
self
.
formulas
),
internal_model
=
self
.
impl
.
__class__
.
__module__
+
"."
+
self
.
impl
.
__class__
.
__name__
)
return
model_desc
...
...
@@ -50,6 +54,7 @@ class ModelBase(metaclass=abc.ABCMeta):
def
load
(
cls
,
model_desc
:
dict
):
obj_layout
=
cls
()
obj_layout
.
features
=
model_desc
[
'features'
]
obj_layout
.
formulas
=
model_desc
[
'formulas'
]
obj_layout
.
trained_time
=
model_desc
[
'trained_time'
]
obj_layout
.
impl
=
decode
(
model_desc
[
'desc'
])
return
obj_layout
...
...
alphamind/model/treemodel.py
View file @
139bddec
...
...
@@ -28,7 +28,7 @@ class RandomForestRegressor(ModelBase):
max_features
:
str
=
'auto'
,
features
:
List
=
None
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
RandomForestRegressorImpl
(
n_estimators
=
n_estimators
,
max_features
=
max_features
,
**
kwargs
)
...
...
@@ -62,7 +62,7 @@ class RandomForestClassifier(ModelBase):
max_features
:
str
=
'auto'
,
features
:
List
=
None
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
RandomForestClassifierImpl
(
n_estimators
=
n_estimators
,
max_features
=
max_features
,
**
kwargs
)
...
...
@@ -97,7 +97,7 @@ class XGBRegressor(ModelBase):
max_depth
:
int
=
3
,
features
:
List
=
None
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
XGBRegressorImpl
(
n_estimators
=
n_estimators
,
learning_rate
=
learning_rate
,
max_depth
=
max_depth
,
...
...
@@ -132,7 +132,7 @@ class XGBClassifier(ModelBase):
max_depth
:
int
=
3
,
features
:
List
=
None
,
**
kwargs
):
super
()
.
__init__
(
features
)
super
()
.
__init__
(
features
,
**
kwargs
)
self
.
impl
=
XGBClassifierImpl
(
n_estimators
=
n_estimators
,
learning_rate
=
learning_rate
,
max_depth
=
max_depth
,
...
...
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