Python全系列 教程
3567个小节阅读:5929.7k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
预测招商银行(600036)的涨跌行情(如果预测为涨,则可以买进该股票;如果预测
为跌,则可以卖出该股票),然后将预测结果与实际情况进行对比,来判断预测结果的对
错。
xxxxxxxxxx
import talib #导入talib库
from jqdata import * #导入聚宽函数库
test_stock = '600036.XSHG' #设置测试标的为招商银行
start_date = datetime.date(2023, 1, 4) #设置开始时间
end_date = datetime.date(2023, 4, 21) #设置结束时间
trading_days = list(get_all_trade_days()) #获取所有交易日
start_date_index = trading_days.index(start_date) #获取开始时间索引
end_date_index = trading_days.index(end_date) #获取结束时间索引
x_all = []
y_all = []
for index in range(start_date_index,end_date_index):
start_day = trading_days[index-30] # 当前index对应的之前的30天
end_day = trading_days[index] # 当前index的日期
# 获取招商银行的股票数据
stock_data = get_price(test_stock,start_date=start_day,end_date=end_day,
frequency='daily',fields=['close'])
# 获取当前时间段的收盘价
close_prices = stock_data['close'].values
# -2是保证获取的数据是昨天的,-1就是今天的
ema_data = talib.EMA(close_prices)[-2] # 指数移动平均线指标
rsi_data = talib.RSI(close_prices)[-2] # RSI指标
features = []
features.append(ema_data)
features.append(rsi_data)
label = False
# 如果今天的收盘价大于昨天收盘价,则label修改为True
if close_prices[-1] > close_prices[-2]:
label = True
x_all.append(features)
y_all.append(label)
# 数据整理
import numpy as np
x_train = np.array(x_all[:-1])
y_train = np.array(y_all[:-1])
x_test = np.array(x_all[-1]).reshape(1,-1)
y_test = np.array(y_all[-1])
print('支持向量机(SVM)数据已经整理好了!')
from sklearn import svm
# 开始利用支持向量机(SVM)机器学习算法计算
clf = svm.SVC()
# 训练拟合
clf.fit(x_train,y_train)
# 预测
prediction = clf.predict(x_test)
# 利用if语句判断是否预测正确
if prediction == y_test:
print('预测正确!')
else:
print('预测错误!')