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
4ebe71fe
Commit
4ebe71fe
authored
Apr 02, 2018
by
Dr.李
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixed for universe
parent
e8165e93
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
10 deletions
+10
-10
universe.py
alphamind/data/engines/universe.py
+10
-10
No files found.
alphamind/data/engines/universe.py
View file @
4ebe71fe
...
...
@@ -14,8 +14,8 @@ from sqlalchemy import select
from
sqlalchemy
import
join
from
sqlalchemy
import
outerjoin
from
alphamind.data.dbmodel.models
import
Universe
as
UniverseTable
from
alphamind.data.dbmodel.models
import
FullFactor
from
alphamind.data.engines.utilities
import
_map_factors
from
alphamind.data.dbmodel.models
import
Market
from
alphamind.data.engines.utilities
import
factor_tables
from
alphamind.data.transformer
import
Transformer
from
alphamind.utilities
import
encode
...
...
@@ -86,22 +86,22 @@ class Universe(object):
dependency
=
transformer
.
dependency
factor_cols
=
_map_factors
(
dependency
,
factor_tables
)
big_table
=
FullFactor
big_table
=
Market
for
t
in
set
(
factor_cols
.
values
()):
if
t
.
__table__
.
name
!=
FullFactor
.
__table__
.
name
:
big_table
=
outerjoin
(
big_table
,
t
,
and_
(
FullFactor
.
trade_date
==
t
.
trade_date
,
FullFactor
.
code
==
t
.
code
,
FullFactor
.
trade_date
.
in_
(
dates
)
if
dates
else
FullFactor
.
trade_date
.
between
(
if
t
.
__table__
.
name
!=
Market
.
__table__
.
name
:
big_table
=
outerjoin
(
big_table
,
t
,
and_
(
Market
.
trade_date
==
t
.
trade_date
,
Market
.
code
==
t
.
code
,
Market
.
trade_date
.
in_
(
dates
)
if
dates
else
Market
.
trade_date
.
between
(
start_date
,
end_date
)))
big_table
=
join
(
big_table
,
UniverseTable
,
and_
(
FullFactor
.
trade_date
==
UniverseTable
.
trade_date
,
FullFactor
.
code
==
UniverseTable
.
code
,
and_
(
Market
.
trade_date
==
UniverseTable
.
trade_date
,
Market
.
code
==
UniverseTable
.
code
,
universe_cond
))
query
=
select
(
[
FullFactor
.
trade_date
,
FullFactor
.
code
]
+
list
(
factor_cols
.
keys
()))
\
[
Market
.
trade_date
,
Market
.
code
]
+
list
(
factor_cols
.
keys
()))
\
.
select_from
(
big_table
)
.
distinct
()
df
=
pd
.
read_sql
(
query
,
engine
.
engine
)
.
sort_values
([
'trade_date'
,
'code'
])
.
dropna
()
...
...
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