打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【Python量化】用Easytrader库实现海龟交易策略,轻松赚取收益
userphoto

2023.05.23 湖北

关注

这里是一个简单的海龟交易策略代码。前提条件是已经安装了easytrader库并且已经有了交易账户以及资金。

  1. 确定入市和止损价格
    海龟交易策略使用的是价格突破法,当价格突破过去的n日高点时入市,同时设置止损价位为入市价格的2N(Average True Range)。
  2. 确定头寸大小
    根据账户资金的风险承受能力,我们可以计算出可承受的每笔交易风险比例,根据这个比例计算出每笔交易的头寸大小。
  3. 平仓
    当价格突破过去的n日低点时平仓,或者坚持持有到达止盈价位时止盈。

下面是代码实现:

import easytrader as etimport talib# 登陆券商账号user = et.use('ht_client')user.prepare('ht.json')# 获取历史数据hist_data = user.get_history_minute_bar('159919', '60')# 计算平均真实波动幅度atr = talib.ATR(hist_data['high'], hist_data['low'], hist_data['close'], timeperiod=20)# 计算止损价位stop_loss_price = hist_data['close'].iloc[-1] - 2 * atr.iloc[-1]# 计算头寸大小risk_ratio = 0.05account_balance = user.balance[0]['total_assets']risk_per_trade = account_balance * risk_ratioposition_size = int(risk_per_trade / atr.iloc[-1])# 根据策略下单current_position = user.position[0]['current_amount']if current_position == 0: # 如果当前头寸为0,则按照入市价格下单 entry_price = hist_data['high'].iloc[-20:].max() user.buy('159919', entry_price, position_size) user.adjust_weight('159919', 1) user.adjust_weight('511990.SH', 0) user.adjust_weight('513050.SH', 0)else: # 如果当前有头寸,则判断是否需要平仓 exit_price = hist_data['low'].iloc[-20:].min() if exit_price <= stop_loss_price: user.sell('159919', exit_price, current_position)

这段代码只是一个简单的示例,实际操作时需要根据具体情况进行调整和改进,这里的示例代码是用于学习和交流用途。同时注意投资有风险,入市需谨慎。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
“四年狂赚3000万!”伟大的交易员是天生造就还是后天培养?
第四章:经典量化策略集锦(第六篇:交易系统终结者—海龟交易法则)
如何更好地理解海龟策略
海龟交易法则读后感
海龟交易法则
适志便逍遥谈海龟交易系统一(非常有借鉴意义)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服