设为首页收藏本站

 找回密码
 注册
查看: 1964|回复: 12
打印 上一主题 下一主题

账户平仓函数平不了仓 [复制链接]

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
跳转到指定楼层
1#
发表于 2019-4-17 10:07:01 |只看该作者 |倒序浏览
旗舰版请教:我当前持有cf1909为data0,持有多仓3手,cf1905为data1持空头方向仓-3手,可是当我用以下代码进行平仓时,我平仓的是data1的空头持仓,提示data0多持仓不足,不知错在哪?代码如下
If(data0.A_TotalPosition<0)A_SendOrder(Enum_Buy,Enum_Exit,data0.A_TotalPosition,data0.Q_AskPrice());
正确的是乍写呢?

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
2#
发表于 2019-4-17 10:12:39 |只看该作者
更正我的代码平DATA1是这样写的
If(data1.A_TotalPosition>0)
                        {
                        A_SendOrder(Enum_Sell,Enum_Exit,data1.A_TotalPosition,data1.Q_BidPrice());
                        Commentary("2data1.A_TotalPosition.  "+Text( data1.A_TotalPosition));
}却平仓提示到data0,这何来
                        }       

使用道具 举报

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
3#
发表于 2019-4-17 10:18:30 |只看该作者
If(data1.A_TotalPosition>0)
                        {
                        A_SendOrder(Enum_Sell,Enum_Exit,data1.A_TotalPosition,data1.Q_BidPrice());
                        Commentary("2data1.A_TotalPosition.  "+Text( data1.A_TotalPosition)+" data0.Q_BidPrice() "+Text( data0.Q_BidPrice())+" 1  "+Text( data1.Q_BidPrice()));

                        }
以上代码平data1的多头,为何提示data0的多头持仓不足呢,

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
0
UID
209716
积分
2226
帖子
2131
主题
0
阅读权限
200
注册时间
2015-5-25
最后登录
2020-5-29
4#
发表于 2019-4-17 10:20:16 |只看该作者
chcm_09 发表于 2019-4-17 10:12
更正我的代码平DATA1是这样写的
If(data1.A_TotalPosition>0)
                        {

A函数,不支持映射,

使用道具 举报

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
5#
发表于 2019-4-17 10:23:30 |只看该作者

RE: 账户平仓函数平不了仓

用旗舰版,我平仓data1的多头持仓,却提示data0多头持仓不足,以下代码错在哪呢?
If(data1.A_TotalPosition>0)
                        {
                        A_SendOrder(Enum_Sell,Enum_Exit,data1.A_TotalPosition,data1.Q_BidPrice());
                        Commentary("2data1.A_TotalPosition.  "+Text( data1.A_TotalPosition)+" data0.Q_BidPrice() "+Text( data0.Q_BidPrice())+" 1  "+Text( data1.Q_BidPrice()));

                        }       

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
6#
发表于 2019-4-17 10:24:16 |只看该作者
chcm_09 发表于 2019-4-17 10:18
If(data1.A_TotalPosition>0)
                        {
                        A_SendOrder(Enum_Sell,Enum_Exit,data1.A_TotalPosition,data1.Q_Bi ...

data1的平仓,需要在指令里写为
data1.a_sendorder( )

使用道具 举报

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
7#
发表于 2019-4-17 10:25:49 |只看该作者
wu778001035 发表于 2019-4-17 10:20
A函数,不支持映射,

哦,谢了

使用道具 举报

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
8#
发表于 2019-4-17 11:17:14 |只看该作者
小米 发表于 2019-4-17 10:24
data1的平仓,需要在指令里写为
data1.a_sendorder( )

还是平不了data0空头持仓
If(data0.A_TotalPosition<0)
                        {
                        data0.A_SendOrder(Enum_Buy,Enum_Exit,data0.A_TotalPosition,data0.Q_AskPrice());
                        Commentary("2data0.A_TotalPosition  "+Text( data0.A_TotalPosition)+" data0.Q_BidPrice() "+Text( data0.Q_BidPrice())+" 1  "+Text( data1.Q_BidPrice()));
                        }       

使用道具 举报

Rank: 1

精华
0
UID
276772
积分
27
帖子
23
主题
4
阅读权限
10
注册时间
2019-3-14
最后登录
2019-4-20
9#
发表于 2019-4-17 11:34:45 |只看该作者
这样写也平不了data0空头的持仓,错在哪?
If(data0.A_TotalPosition<0)
                        {
                        //data0.A_SendOrder(Enum_Buy,Enum_Exit,data0.A_TotalPosition,data0.Q_AskPrice());
                        BuyToCover(data0.A_TotalPosition,0);
                        Commentary("2data0.A_TotalPosition  "+Text( data0.A_TotalPosition)+" data0.Q_BidPrice() "+Text( data0.Q_BidPrice())+" 1  "+Text( data1.Q_BidPrice()));
                        }       

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
10#
发表于 2019-4-17 11:44:52 |只看该作者
chcm_09 发表于 2019-4-17 11:17
还是平不了data0空头持仓
If(data0.A_TotalPosition

前面说的是cf1909为data0, 持多仓3手。
公式里判断的是a_totalpositon<0,a_senorder(平空)。
你的帐户里倒底是多头还是空头持仓?
委托指令下的是多少手呢?
或者写个日志输出相关的值调试一下吧。

A函数交易,不如图表信号那么直观。还需要其它的判断的控制,比如最后BAR上的分支处理,全局交易设置控制下单次数等等,你的实际代码里都有吧?

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-11 10:33

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部