Commit 5a11cfb6 authored by 李煜's avatar 李煜

add Eaning Equality factor

parent d42da92f
# FactorCalculate
- /factor
该文件目录下保存的是因子计算的task文件, 以及每个task所依赖的因子计算文件。
- client.py
This diff is collapsed.
......@@ -340,7 +340,7 @@ def get_basic_scale_data(trade_date):
if __name__ == '__main__':
session1 = str('156099868869460811')
session2 = str('156099868869460812')
session3 = str('156099868869460813')
# session3 = str('156099868869460813')
# session = str(int(time.time() * 1000000 + datetime.now().microsecond))
start_date = 20100101
end_date = 20190101
......@@ -349,14 +349,15 @@ if __name__ == '__main__':
_trade_date = TradeDate()
trade_date_sets = _trade_date.trade_date_sets_ago(start_date, end_date, count)
if rebuild is True:
# growth
growth = factor_growth.Growth('factor_growth')
growth.create_dest_tables()
# historical value
history_value = historical_value.HistoricalValue('factor_historical_value')
history_value.create_dest_tables()
scale = factor_per_share_indicators.PerShareIndicators('factor_scale')
scale.create_dest_tables()
# scale
# scale = factor_per_share_indicators.PerShareIndicators('factor_scale')
# scale.create_dest_tables()
for date_index in trade_date_sets:
# factor_growth
......@@ -380,13 +381,13 @@ if __name__ == '__main__':
print('history_cal_time:{}'.format(time.time() - time1))
# scale
valuation_sets, ttm_factor_sets, cash_flow_sets, income_sets, balance_sets = get_basic_scale_data(date_index)
valuation_sets = pd.merge(valuation_sets, income_sets, on='symbol')
valuation_sets = pd.merge(valuation_sets, ttm_factor_sets, on='symbol')
valuation_sets = pd.merge(valuation_sets, cash_flow_sets, on='symbol')
valuation_sets = pd.merge(valuation_sets, balance_sets, on='symbol')
cache_data.set_cache(session3, date_index, valuation_sets.to_json(orient='records'))
factor_per_share_indicators.factor_calculate(date_index=date_index,
session=session3)
# valuation_sets, ttm_factor_sets, cash_flow_sets, income_sets, balance_sets = get_basic_scale_data(date_index)
# valuation_sets = pd.merge(valuation_sets, income_sets, on='symbol')
# valuation_sets = pd.merge(valuation_sets, ttm_factor_sets, on='symbol')
# valuation_sets = pd.merge(valuation_sets, cash_flow_sets, on='symbol')
# valuation_sets = pd.merge(valuation_sets, balance_sets, on='symbol')
# cache_data.set_cache(session3, date_index, valuation_sets.to_json(orient='records'))
# factor_per_share_indicators.factor_calculate(date_index=date_index,
# session=session3)
print('---------------------->')
......@@ -4,9 +4,9 @@
"""
@version: ??
@author: li
@file: __init__.py.py
@file: __init__.py
@time: 2019-06-30 19:04
"""
from ultron.cluster.invoke.app_engine import create_app
app = create_app('factor', ['factor.factor_growth', 'factor.historical_value'])
app = create_app('factor', ['factor.factor_growth', 'factor.historical_value', 'factor.factor_cash_flow'])
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -8,7 +8,6 @@
@time: 2019-02-12 10:03
"""
import json
from datetime import datetime, timedelta
from sklearn import linear_model
from pandas.io.json import json_normalize
......@@ -21,6 +20,9 @@ from ultron.cluster.invoke.cache_data import cache_data
class Growth(FactorBase):
"""
成长类因子
"""
def __init__(self, name):
super(Growth, self).__init__(name)
......@@ -694,20 +696,6 @@ def do_update(growth, growth_sets, start_date, end_date, count):
print('----->')
def run(args):
if args.end_date == 0:
end_date = int(datetime.now().date().strftime('%Y%m%d'))
else:
end_date = args.end_date
if args.rebuild:
processor_growth = Growth('factor_growth')
processor_growth.create_dest_tables()
do_update(args.start_date, end_date, args.count, args.growth_sets, processor_growth)
if args.update:
processor_growth = Growth('factor_growth')
do_update(args.start_date, end_date, args.count, args.growth_sets, processor_growth)
@app.task()
def factor_calculate(**kwargs):
print("growth_kwargs: {}".format(kwargs))
......
......@@ -29,6 +29,9 @@ from ultron.cluster.invoke.cache_data import cache_data
class HistoricalValue(FactorBase):
"""
价值类因子
"""
def __init__(self, name):
super(HistoricalValue, self).__init__(name)
......
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