Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:【zzc_python】移动止损范例

1楼
yukizzc 发表于:2019/10/23 10:01:23
# 本Python代码主要用于策略交易
# 可以自己import我们平台支持的第三方python模块,比如pandas、numpy等。
from PythonApi import *
from datetime import datetime
def init(context):
    context.hh = 0
    



# 你选择的品种的数据更新将会触发此段逻辑,例如日或分钟历史数据切片或者是实时数据切片更新。--(必须实现)
def handle_bar(context):
    year = context.now.year
    month = context.now.month    
    day = context.now.day
    #print((year,month,day))
    if year==2018 and month==12 and day==3:
        buy_open("SQRB00", "Market",0 ,1)
    portfolio = get_portfolio ("RB00", 2)    
    bar_close = history_bars('SQRB00',1,'1d','CLOSE')
    if portfolio.buy_quantity>0 and bar_close>context.hh:
        context.hh = bar_close
    #print((context.hh,bar_close))
    if portfolio.buy_quantity>0 and (context.hh - bar_close)/context.hh >0.1:
        sell_close("SQRB00", "Market",0 ,1)
        context.hh = 0
    

2楼
yukizzc 发表于:2019/10/23 10:06:03
从螺纹钢18年12月1号测试到现在,为了方便对照图形我特意做了一个信号在12月3号进行下单,局部一个低点然后行情上升,然后在8月份左右达到条件中设定的回落10%

方法就是用context.hh来记录我们有持仓以来的最高价,然后做一个判断就行了。
至于空头大家可自行完成,如果是多品种的话建议构造一个记录最高价 的字典,根据不同的品种作为key记录。
3楼
jinkai76 发表于:2020/12/10 9:26:24
如果考虑多个品种get_portfolio ("股票", 2) 要用for 循环,这是返回的portfolio 怎么区别各个品种?
共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03705 s, 2 queries.