设为首页收藏本站

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

平仓指令,不能实现自动止损平仓.SetStopLoss(1,100,true), [复制链接]

Rank: 5Rank: 5

精华
0
UID
7593
积分
609
帖子
109
主题
14
阅读权限
60
注册时间
2010-3-19
最后登录
2014-5-18
跳转到指定楼层
1#
发表于 2010-4-26 10:52:05 |只看该作者 |倒序浏览
Dear Adm and all,
      我写了一个模型测试一下,使用函数SetStopLoss(1,100,true)不能进行自动平仓,望管理员及各位高手给予帮助,谢谢。
代码如下:
//------------------------------------------------------------------------
// 简称: my_trtst
// 名称: my_trtst
// 类别: 交易指令
// 类型: 其他
// 输出:
//------------------------------------------------------------------------

Params
Numeric down_length(1.5);
Numeric up_length(0.5);
Vars

//-------------止损平仓1000-----------------
SetStopLoss(1,100,true);
//-------------价格盈利回落10%(0.1)实行平仓------------
SetPercentTrailing(600,0.1,true);

//----------------获得当前持仓位置的浮动盈亏--------------
if (MarketPosition!=0 And BarStatus ==2){
FileDelete("C:\\Program_Trading.log");  
FileAppend("C:\\Program_Trading.log","浮动盈亏 = "+Text(A_ProfitLoss()));为什么输出的是一个N/A的字符串。

}
End

//------------------------------------------------------------------------
// 编译版本        GS2004.06.12
// 用户版本        2010/04/17 23:44
// 版权所有        zejunl
// 更改声明        TradeBlazer Software保留对TradeBlazer平台
//                        每一版本的TrabeBlazer公式修改和重写的权利
//------------------------------------------------------------------------
此贴在lh948同志的大力支持下已经得到解决。
Submitter: zejunl

[ 本帖最后由 zejunl 于 2010-4-27 13:42 编辑 ]

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20901
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
2#
发表于 2010-4-26 12:06:32 |只看该作者
SetStopLoss这个函数暂时无法在实盘上使用,只能用于历史测试.

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7593
积分
609
帖子
109
主题
14
阅读权限
60
注册时间
2010-3-19
最后登录
2014-5-18
3#
发表于 2010-4-26 12:10:28 |只看该作者
请问这个函数的说明中为什么有该函数仅支持交易指令 ,及怎样去区分函数是否支持交易指令。谢谢!
SetStopLoss
说明 根据参数进行止损平仓操作。
语法 Bool SetStopLoss(Integer Type,Numeric Value,Bool ExitPosition=False)
参数 Type 止损平仓的设置类型,参数定义如下:
0 按照持仓亏损数来计算止损平仓
1 按照每张合约亏损数来计算止损平仓
Value 根据Type类型而不同的设定值。
ExitPosition 布尔值,为True时,表示对当前所有持仓一起计算进行平仓,为False对每一个仓位单独计算进行平仓。  
备注 根据参数进行止损平仓操作,返回值为布尔型,执行成功返回True,否则返回False,该函数仅支持交易指令
止损平仓是指当亏损大于等于设定值时,自动进行平仓操作,平仓的价格是满足亏损值等于设定值的价格。止损平仓在计算亏损时不考虑佣金。如果Type和Value的输入值无效,该函数的操作将被忽略。  
示例 SetStopLoss(0,2000,True); 当前所有持仓亏损达到2000之后,执行所有持仓位置的止损平仓。(此时是计算所有持仓的亏损数)
SetStopLoss(1,50, False); 当前持仓的某一个建仓位置每张合约的亏损达到50之后,执行该持仓位置的止损平仓。(此时只计算该持仓位置的每张合约亏损)

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20901
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
4#
发表于 2010-4-26 13:00:01 |只看该作者
公式类型分为技术指标,用户函数,k线形态,用户字段,特征走势,交易指令
SetStopLoss只能用于交易指令,用于历史的测试,不能在技术指标中使用,不能用于实盘交易

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7593
积分
609
帖子
109
主题
14
阅读权限
60
注册时间
2010-3-19
最后登录
2014-5-18
5#
发表于 2010-4-26 13:45:17 |只看该作者
Sorry,是我表述错误,我的意思是,如果在函数解释中标注有“该函数仅支持交易指令”,我怎样去区分这交易函数是只能用于历史测试,还是可以用于实盘操作呢?期待您的解答!谢谢。
Zejunl

使用道具 举报

Rank: 4

精华
0
UID
6709
积分
355
帖子
28
主题
6
阅读权限
50
注册时间
2010-1-18
最后登录
2019-3-30
6#
发表于 2010-4-26 14:01:28 |只看该作者
我帮你顶!!!!!

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20901
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
7#
发表于 2010-4-26 14:37:42 |只看该作者
暂时只有这个函数。

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7593
积分
609
帖子
109
主题
14
阅读权限
60
注册时间
2010-3-19
最后登录
2014-5-18
8#
发表于 2010-4-26 14:58:59 |只看该作者

回复 7# lh948 的帖子

不明白您的意思,我是说在所有的交易函数中,那些函数可以用于实盘交易,那些只能用于测试中使用,因为我看了交易函数解释,通通都有这样一句,”该函数仅支持交易指令“,所以就把我弄糊涂了哈。请给予帮助解答。谢谢。

zejunl

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
7593
积分
609
帖子
109
主题
14
阅读权限
60
注册时间
2010-3-19
最后登录
2014-5-18
9#
发表于 2010-4-26 15:05:08 |只看该作者
请看附图。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
2
UID
4130
积分
20901
帖子
6519
主题
17
阅读权限
200
注册时间
2009-4-15
最后登录
2019-4-12
10#
发表于 2010-4-26 17:00:48 |只看该作者
更正一下我之前对上面的回答:

首先,对1楼,A_ProfitLoss()是和账户关联的,前面没有带A和Q的函数(即非A、Q函数)是与图表关联的,也就是说buysell开的仓只在图表上显示开仓平仓。并不是实际在账户上持仓的,所以A_ProfitLoss()取到无效值的。只有交易了,在账户有相应的值,A_ProfitLoss才能取到有效值。

其次,我之前说的对历史测试用的函数,我们建议非A、Q函数,不要用于实盘交易,因为非A、Q函数主要是做来给用户进行历史测试的。这是我们的建议。如果客户非要使用buysell进行交易,也是可以的。A/Q函数交易比较灵活,但是在图表上没有信号。

使用道具 举报

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

bottom

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

GMT+8, 2024-5-2 15:00

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部