设为首页收藏本站

 找回密码
 注册
查看: 32361|回复: 42

关于MarketPosition 总结 [复制链接]

Rank: 2

精华
0
UID
109379
积分
112
帖子
30
主题
10
阅读权限
30
注册时间
2012-4-5
最后登录
2019-10-10
发表于 2012-7-30 13:27:04 |显示全部楼层
我使用
if(open > con1 and MarketPosition ==0)
{
  buy(n,open);
}
这样的模式来开仓,开仓成功后,还是会一直进到函数体中,也就是MarketPosition ==0还一直成立,怎么回事啊?MarketPosition 的值必须走完当前bar才更新吗?我买入成功后,信号也出现了,信号也没有消失,为什么MarketPosition 的值未更新?【id:穿堂风】

回复:MarketPosition 好像是下一个BAR才会更新值,简单说,marketposition实盘不能用,只能用来测试【ID:文静的狮子 】
以信为本 点石成金

Rank: 5Rank: 5

精华
0
UID
31697
积分
671
帖子
137
主题
13
阅读权限
60
注册时间
2011-4-2
最后登录
2020-10-8
发表于 2012-7-30 18:02:19 |显示全部楼层
Marketposition是下一根Bar才改变

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
发表于 2012-7-30 22:58:28 |显示全部楼层
试写如下代码
  1. Begin
  2.         If(close[1] >open[1])
  3.         {
  4.                 FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "||  执行buy命令前的marketposition值: " +Text(marketposition));
  5.                 Buy(1,open);
  6.                 FileAppend("d:\\marketpostion.log"," currentbar: "+text(currentbar)+ "||  执行buy命令后的marketposition值: " +Text(marketposition));
  7.         }
  8. end
复制代码
得出信号如下图:



公式所写日志记录如下:



综上可得知:在本K线上,marketposition的初始值为0,在执行buy语句前为0,buy之后就会变为1。当前信号所在K线,每执行一次,marketposition都是从初始值0开始运行,buy之后变成1 。
周而复始,直到本K线的最后一个tick走完之后,将1的做为下一个K线的markeposition的初始参与计算 。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Rank: 5Rank: 5

精华
1
UID
42516
积分
1239
帖子
264
主题
31
阅读权限
60
注册时间
2011-5-25
最后登录
2014-9-23
发表于 2012-7-31 00:56:22 |显示全部楼层
Mark  这个需要学习

使用道具 举报

Rank: 2

精华
0
UID
109379
积分
112
帖子
30
主题
10
阅读权限
30
注册时间
2012-4-5
最后登录
2019-10-10
发表于 2012-8-6 21:33:37 |显示全部楼层
本帖最后由 shenpei715 于 2012-8-7 10:26 编辑
小米 发表于 2012-7-30 22:58
试写如下代码得出信号如下图:


非常感谢,林老师!
不只提供了一个问题的答案,重要的是给出了一种排查出错的思路方法。

使用道具 举报

Rank: 3Rank: 3

精华
0
UID
52470
积分
182
帖子
91
主题
30
阅读权限
40
注册时间
2011-7-11
最后登录
2014-4-24
发表于 2012-8-9 21:23:55 |显示全部楼层
这样一来,一些信号消失也就解释的通了

使用道具 举报

Rank: 1

精华
0
UID
10659
积分
23
帖子
10
主题
0
阅读权限
10
注册时间
2010-5-22
最后登录
2012-12-17
发表于 2012-8-23 08:01:36 |显示全部楼层
Mark,学习了。。。。。

使用道具 举报

Rank: 2

精华
0
UID
111878
积分
96
帖子
46
主题
12
阅读权限
30
注册时间
2012-8-4
最后登录
2013-3-22
发表于 2012-9-3 11:32:57 |显示全部楼层
小米 发表于 2012-7-30 22:58
试写如下代码得出信号如下图:

那这样MarketPosition这样0,1之间跳动吗,当新的tick时为0,不会造成重复开仓吗?

使用道具 举报

Rank: 2

精华
0
UID
111878
积分
96
帖子
46
主题
12
阅读权限
30
注册时间
2012-8-4
最后登录
2013-3-22
发表于 2012-9-3 14:47:08 |显示全部楼层
另外再请教管理员小米老师,tb是每个bar执行一遍公式还是每个tick执行一遍公式,如果是每个bar执行一遍公式,为何你举例的交易日志会后多行记录?

使用道具 举报

Rank: 4

精华
0
UID
88963
积分
269
帖子
208
主题
16
阅读权限
50
注册时间
2011-12-25
最后登录
2022-12-9
发表于 2012-9-3 15:41:13 |显示全部楼层
网校蔡云华解释过,每个Tick开始MarketPosition会回到默认值0,然后判断是否有符合持仓条件,再赋值为1

使用道具 举报

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

bottom

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

GMT+8, 2024-3-29 16:41

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部