def isMACDGold(context,security):
'''
判断是否 MACD 金叉
return True or False
'''
#当天和前一个交易日的日期
check_date = context.current_dt.strftime('%Y-%m-%d')
previous_date1 = context.previous_date
previous_date2 = jqdata.get_trade_days(end_date =check_date,count = 10)[-3]
# 计算并输出 security 的 MACD 值
macd_dif, macd_dea, macd_macd = MACD(security,check_date=previous_date1, SHORT = 12, LONG = 26, MID = 9)
previous_date_macd_dif, previous_date_macd_dea, previous_date_macd_macd = MACD(security,check_date=previous_date2, SHORT = 12, LONG = 26, MID = 9)
if previous_date_macd_macd[security] < 0 and macd_macd[security] > 0:
return True
else:
return False
def isMACDDead(context,security):
'''
判断是否 MACD 死叉
return True or False
'''
#当天和前一个交易日的日期
check_date = context.current_dt.strftime('%Y-%m-%d')
previous_date = context.previous_date
# 计算并输出 security 的 MACD 值
previous_date1 = context.previous_date
previous_date2 = jqdata.get_trade_days(end_date =check_date,count = 10)[-3]
macd_dif, macd_dea, macd_macd = MACD(security,check_date=previous_date1, SHORT = 12, LONG = 26, MID = 9)
previous_date_macd_dif, previous_date_macd_dea, previous_date_macd_macd = MACD(security,check_date=previous_date2, SHORT = 12, LONG = 26, MID = 9)
if previous_date_macd_macd[security] > 0 and macd_macd[security] < 0:
return True
else:
return False
改了这两个函数,效果不太好
2017-10-11