tushare程序化交易 (使用tushare获取数据)

使用tushare库获取数据并在你的Alpha交易策略中使用,你首先需要安装tushare库并在你的项目中导入它。

如何使用tushare获取股票数据,tushare能获得实时行情数据吗

请遵循以下步骤进行操作:

  1. 安装tushare库:
npm install tushare

  1. 在你的TypeScript文件中导入tushare库:

如何使用tushare获取股票数据,tushare能获得实时行情数据吗

import { DataFeed, Indicator, Order, Position, Strategy } from 'ts-trading'
import tushare from 'tushare'

// 创建一个继承自 Strategy 的自定义策略类
class AlphaStrategy extends Strategy {
  // 初始化策略
  init(): void {
    // 获取数据来自tushare库
    const dataPromise = tushare.getHistoryData('AAPL', '2023-01-01', '2023-07-01')

    // 处理数据
    dataPromise.then((data) => {
      // 创建指标
      const sma = new Indicator.SMA(data['close'], 20)
      const ema = new Indicator.EMA(data['close'], 50)

      // 当指标满足条件时执行交易
      this.onPositionUpdate((position: Position) => {
        const closePrice = position.getLastPrice()
        const smaValue = sma.getValue(closePrice)
        const emaValue = ema.getValue(closePrice)

        // 如果短期均线上穿长期均线,则买入
        if (smaValue > emaValue && position.isFlat()) {
          this.order('AAPL', 100, 'buy')
        }

        // 如果短期均线下穿长期均线,则卖出
        if (smaValue < emaValue && position.isLong()) {
          this.order('AAPL', 100, 'sell')
        }
      })
    }).catch((error) => {
      console.error('获取数据时发生错误:', error)
    })
  }
}

// 实例化策略并运行
const strategy = new AlphaStrategy()
strategy.run()

如何使用tushare获取股票数据,tushare能获得实时行情数据吗

在上述代码中,我们首先在顶部导入了tushare库,并在构造函数中调用了 tushare.getHistoryData方法来获取AAPL股票的历史数据。

然后,我们根据获取到的数据创建了指标(SMA和EMA),并在 onPositionUpdate方法中执行交易逻辑。

如何使用tushare获取股票数据,tushare能获得实时行情数据吗

请确保你在其它位置配置了tushare库的API密钥(可在tushare官方网站上注册获取)。

你需要根据你的需求和tushare库的API文档进一步调整代码。