|
|
@ -24,6 +24,7 @@ def query_high_score_funds(quarter_index):
|
|
|
|
words = ['%指数%', '%C', '%E', '%H%']
|
|
|
|
words = ['%指数%', '%C', '%E', '%H%']
|
|
|
|
rule = and_(*[FundBase.fund_name.notlike(w) for w in words])
|
|
|
|
rule = and_(*[FundBase.fund_name.notlike(w) for w in words])
|
|
|
|
res = session.query(FundQuarter,ManagerAssoc,FundBase).where(FundQuarter.fund_code == ManagerAssoc.fund_code).where(FundQuarter.fund_code == FundBase.fund_code).filter(FundQuarter.quarter_index == quarter_index, \
|
|
|
|
res = session.query(FundQuarter,ManagerAssoc,FundBase).where(FundQuarter.fund_code == ManagerAssoc.fund_code).where(FundQuarter.fund_code == FundBase.fund_code).filter(FundQuarter.quarter_index == quarter_index, \
|
|
|
|
|
|
|
|
ManagerAssoc.quarter_index >= quarter_index,
|
|
|
|
FundQuarter.morning_star_rating_5 >= 3, # 5年评级大于等于3
|
|
|
|
FundQuarter.morning_star_rating_5 >= 3, # 5年评级大于等于3
|
|
|
|
FundQuarter.morning_star_rating_3 == 5, # 3年评级等于5
|
|
|
|
FundQuarter.morning_star_rating_3 == 5, # 3年评级等于5
|
|
|
|
FundQuarter.stock_position_total >= 50, # 股票仓位大于50
|
|
|
|
FundQuarter.stock_position_total >= 50, # 股票仓位大于50
|
|
|
@ -34,7 +35,7 @@ def query_high_score_funds(quarter_index):
|
|
|
|
FundQuarter.risk_rating_5 > 1, # 5年风险评级大于1
|
|
|
|
FundQuarter.risk_rating_5 > 1, # 5年风险评级大于1
|
|
|
|
# ManagerAssoc.manager_start_date < last_year_date, # 至少任职该基金一年
|
|
|
|
# ManagerAssoc.manager_start_date < last_year_date, # 至少任职该基金一年
|
|
|
|
FundQuarter.total_asset < 100, # 总规模资金小于100亿
|
|
|
|
FundQuarter.total_asset < 100, # 总规模资金小于100亿
|
|
|
|
).filter(rule).all()
|
|
|
|
).filter(rule).order_by(FundQuarter.risk_assessment_sharpby.desc()).all()
|
|
|
|
return res
|
|
|
|
return res
|
|
|
|
|
|
|
|
|
|
|
|
def query_all_fund():
|
|
|
|
def query_all_fund():
|
|
|
|