金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 5083|回复: 11

后台持仓同步

[复制链接]

78

主题

283

帖子

283

积分

Rank: 2

等级: 标准版

注册:
2021-12-28
曾用名:
发表于 2022-2-26 16:23 | 显示全部楼层 |阅读模式
老师好!
任何实现后台的持仓同步?
请给代码,谢谢!
回复

使用道具 举报

78

主题

283

帖子

283

积分

Rank: 2

等级: 标准版

注册:
2021-12-28
曾用名:
 楼主| 发表于 2022-2-26 16:33 | 显示全部楼层
//策略理论持仓
ho1:stkindiex(stklabel,'BOLL布林带交易系统.ho',0,1,0,500);
//上一根k线的理论持仓
before_ho1:stkindiex(stklabel,'BOLL布林带交易系统.ho',0,1,-1,500);
//账户多头持仓
tbuyho:tbuyholdingex('',STKLABEL,1);
//账户空头持仓
tsellho:tsellholdingex('',STKLABEL,1);
//是否有未成交单,返回1表示有未成交
is_order:TGLOBALSUBMITEX(0,'',stklabel,0);

//如果当前品种有挂单或者理论策略的当根k理论持仓有变化,就不执行
if is_order or (ho1<>before_ho1) then exit;
else
BEGIN
        //多头部分
        //理论持仓大于0,补仓
        if ho1>0 and ho1>tbuyho then
        BEGIN
                tbuy(1,ho1-tbuyho,mkt);
        END
        //理论持仓大于0,减仓
        if ho1>=0 and ho1<tbuyho then
        BEGIN
                tsell(1,tbuyho-ho1,mkt);
        END

        //空头部分
        //理论持仓小于0,补仓
        if ho1<0 and abs(ho1)>tsellho then
        BEGIN
                tbuyshort(1,abs(ho1)-tsellho,mkt);
        END
        //理论持仓小于0,减仓
        if ho1<=0 and abs(ho1)<tsellho then
        BEGIN
                tsellshort(1,tsellho-abs(ho1),mkt);
        END                        
END


——这个策略中://如果当前品种有挂单,就不执行//——请改为“如果当前品种有挂单,就撤单在下一根K线重新下单和理论持仓同步”
回复

使用道具 举报

37

主题

9943

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-2-28 08:56 | 显示全部楼层
抱歉,实现不了
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

78

主题

283

帖子

283

积分

Rank: 2

等级: 标准版

注册:
2021-12-28
曾用名:
 楼主| 发表于 2022-3-6 18:49 | 显示全部楼层
再次请教:ho1:stkindiex(stklabel,'BOLL布林带交易系统.ho',0,1,0,500);  比如:交易系统的名称是“BOLL布林带交易系统”,那么句中的“ho”是什么?,引用句子中后面的参数可以省略吗,如果省略怎么写?谢谢!
回复

使用道具 举报

37

主题

9943

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-3-6 18:59 | 显示全部楼层
'BOLL布林带交易系统.ho'   点前面是被引用公式的名称,点后面是被引用公式中的变量。根据变量名猜测应该是引用的boll公式中的holding。 这个需要你自己看下你的【BOLL布林带交易系统】的内容才能确定。

参数可以省略,省略后的方式就是你上面的写的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

136

帖子

136

积分

等级: 免费版

注册:
2021-12-11
曾用名:
发表于 2022-5-5 15:56 | 显示全部楼层
老师好:给2楼这个持仓同步加一个开关设在参数里,怎么做?1:启动持仓同步,0:关闭?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-5-5 16:04 | 显示全部楼层
上面这个代码没有自己的开平逻辑,它是直接调用图表的持仓进行下单处理的。所以不存在加一个所谓持仓同步开关了。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

43

主题

136

帖子

136

积分

等级: 免费版

注册:
2021-12-11
曾用名:
发表于 2022-5-5 21:56 | 显示全部楼层
技术009 发表于 2022-5-5 16:04
上面这个代码没有自己的开平逻辑,它是直接调用图表的持仓进行下单处理的。所以不存在加一个所谓持仓同步开 ...

加这个开关的目的是在同步时间时机上进行控制,比如某时开启,某时关闭
回复

使用道具 举报

43

主题

136

帖子

136

积分

等级: 免费版

注册:
2021-12-11
曾用名:
发表于 2022-5-5 21:57 | 显示全部楼层
金子阳光 发表于 2022-5-5 21:56
加这个开关的目的是在同步时间时机上进行控制,比如某时开启,某时关闭

或者说,策略加了这个持仓同步后,我不想执行的适合可以关闭,想执行的时候就开启
回复

使用道具 举报

43

主题

136

帖子

136

积分

等级: 免费版

注册:
2021-12-11
曾用名:
发表于 2022-5-5 22:02 | 显示全部楼层
金子阳光 发表于 2022-5-5 21:57
或者说,策略加了这个持仓同步后,我不想执行的适合可以关闭,想执行的时候就开启

设一个tb参数,1为开启,0为关闭,这样可以吗?

if 理论持仓>0 and 理论持仓>实际持仓 and tb=1 then
        BEGIN
                tbuy(1,理论持仓-实际持仓,mkt);
        END
        
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-5-29 07:08 , Processed in 0.156757 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表