金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 100018518

barslast的问题

[复制链接]

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-10 09:21 | 显示全部楼层
谢谢。
假设股票池的条件:Tj1:xxxxx;与开仓语句if xx then begin..............end
tj1放在if...........end之外与放在if..........end之内,会有差别吗?
放在
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-6-10 09:43 | 显示全部楼层
是放在if判断力还是放到下单函数本身的参数位置,没啥区别。

就看if里面是否还有其他操作的。比如重置全局变量啊之类的。这种我都建议所有条件都加入到if条件判断力,以确保其他的操作和下单信号是一致发生的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-10 09:44 | 显示全部楼层
谢谢
回复

使用道具 举报

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-10 11:06 | 显示全部楼层
技术009 发表于 2022-6-10 09:43
是放在if判断力还是放到下单函数本身的参数位置,没啥区别。

就看if里面是否还有其他操作的。比如重置全 ...

老师好,不知道啥原因,语句完全一致。似乎放在if里边信号与之外信号发出的次数不一样呢
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-6-10 11:07 | 显示全部楼层
Tj1 是怎么定义的?
具体代码是怎样的看下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-10 11:30 | 显示全部楼层
技术009 发表于 2022-6-10 11:07
Tj1 是怎么定义的?
具体代码是怎样的看下。

谢谢,找到原因了。exedataset问题。
回复

使用道具 举报

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-16 12:17 | 显示全部楼层
老师好!
目标:图表-后台同步持仓
1、图表策略(连续合约)——1秒轮询
mhold:=STKNAME()&'Z买hold';
..........
buy(1,lots,marktr);
EXTGBDATASET(mhold,holding);
2、后台策略——1秒轮询
mhold:=STKNAME()&'Z买hold';
hold0:=EXTGBDATA(mhold);
TbuyH:=Tbuyholding(1);
if mhold<>0 then begin
   if mhold>TbuyH then Tbuy(1,mhold-TbuyH,MKT);
   if mhold<TbuyH then Tsell(1,Tbuy-Hmhold,MKT);
end
问题:实盘为何不能同步呢?

补充内容 (2022-6-16 12:21):
3、工作模式,打开两个图表框架,不点启动程序化交易。后台进行同步。可以开仓,但同步似乎出了问题。

补充内容 (2022-6-16 12:22):
修改:
if hold<>0 then begin
   if hold0>TbuyH then Tbuy(1,hold0-TbuyH,MKT);
   if hold0<TbuyH then Tsell(1,TbuyH-hold0,MKT);
end
回复

使用道具 举报

37

主题

9948

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-6-16 13:21 | 显示全部楼层
你说的似乎出了问题,具体是什么?

其次不要用Tbuyholding(1),它不含平仓未成交数量。平仓时总会有未成交的空档期。用Tbuyholdingex取全部持仓(要包含平仓未成交)

注:不建议这种玩法。两者机制不同,完全拉低了后台自己优势
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

45

主题

257

帖子

262

积分

等级: 免费版

注册:
2021-5-20
曾用名:
 楼主| 发表于 2022-6-21 06:34 | 显示全部楼层
技术006 发表于 2022-6-16 13:21
你说的似乎出了问题,具体是什么?

其次不要用Tbuyholding(1),它不含平仓未成交数量。平仓时总会有未成 ...

老师好,图表,后台持仓同步写法对不?
//账户多头持仓
TbuyH:=tbuyholdingex('',STKLABEL,1);
//账户空头持仓
TsellH:=tsellholdingex('',STKLABEL,1);
//是否有未成交单,返回1表示有未成交
Is_order:=TGLOBALSUBMITEX(0,'',stklabel,0);

if Is_order then exit;
else
BEGIN
        //多头部分
        //理论持仓大于0,补仓
        if hold0<>0 and hold0>TbuyH then
        BEGIN
                tbuy(1,hold0-TbuyH,mkt);
        END
        //理论持仓大于0,减仓
        if hold0>=0 and hold0<TbuyH then
        BEGIN
                tsell(1,TbuyH-hold0,mkt);
        END

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

补充内容 (2022-6-21 08:26):

老师好!
目标:图表-后台同步持仓
1、图表策略(连续合约)——1秒轮询
mhold:=STKNAME()&'Z买hold';
..........
buy(1,lots,marktr);
EXTGBDATASET(mhold,holding);
2、后台策略——1秒轮询
mhold:=STKNAME...
回复

使用道具 举报

37

主题

9948

帖子

6万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2022-6-21 08:36 | 显示全部楼层
不对。
1. tbuyholdingex('',STKLABEL,1);不包含平仓未成交单,在平仓发出到成交之间,策略很可能执行多次,那么下次时你所谓的理论仓位判断就会造成补仓
2. TGLOBALSUBMITEX这个函数可以直接理解为根据回报判断的,那么委托出去到收到委托回报返回,是需要时间的,这个时间策略也会执行,你应该考虑用的是TISREMAIN这类函数
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-2 01:49 , Processed in 0.134257 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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