![]() 制定以下的交易策略: 当日的收盘价高于前一日的收盘价,且满足以下条件时,买入该股票:
![]() 代码示例: import talibimport tushare as ts# 设置 API 授权信息ts.set_token('YOUR_TOKEN')# 初始化 tusharepro = ts.pro_api()# 获取交易数据df = pro.daily(ts_code='000001.SZ', start_date='20210101', end_date='20220625')# 计算均线和成交量均线df['ma5'] = talib.MA(df['close'], timeperiod=5)df['ma24'] = talib.MA(df['close'], timeperiod=24)df['ma5_vol'] = talib.MA(df['vol'], timeperiod=5)df['ma60_vol'] = talib.MA(df['vol'], timeperiod=60)# 计算 MACD 指标df['macd'], df['signal'], df['hist'] = talib.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)# 确定买入点buy_signal = (df['close'] > df['close'].shift(1)) \ & (df['ma5'] > df['ma24']) \ & (df['ma5_vol'] > df['ma60_vol']) \ & (df['macd'] > 0) \ & (df['high'] > talib.MAX(df['high'].rolling(window=20).max().shift(1), 20))# 买入信号的日期buy_dates = df.loc[buy_signal, 'trade_date']print(buy_dates) ![]() |
|