设为首页收藏本站

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

小白提问 [复制链接]

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
跳转到指定楼层
1#
发表于 2018-10-24 10:42:35 |只看该作者 |倒序浏览
为什么单独写如下语句不能开空仓
If(close[1]>=MidLine)//MidLine是boll中轨
{
        SellShort(1,0);//平掉所有多仓,当前价开空
}

而加上下面的Buy语句,就可以开仓了,这是为什么?
If(close[1]>=MidLine)
{       
        SellShort(1,0);//平掉所有多仓,当前价开空
}               
               
If(close[1]<DownLine)
{
        Buy(1,0); //平掉所有空仓,当前价开多
}       

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2018-10-24 10:45:01 |只看该作者
单写sellshort也能开仓。只不过信号只在图表左边会有1个或几个开空的信号,没有平仓,没有再次开仓等。

使用道具 举报

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
3#
发表于 2018-10-24 10:49:02 |只看该作者
小米 发表于 2018-10-24 10:45
单写sellshort也能开仓。只不过信号只在图表左边会有1个或几个开空的信号,没有平仓,没有再次开仓等。 ...

不加上buy,就不能开仓,图表左边也没有开空的信号,这是为什么呢?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
4#
发表于 2018-10-24 14:43:58 |只看该作者
ppzcgg 发表于 2018-10-24 10:49
不加上buy,就不能开仓,图表左边也没有开空的信号,这是为什么呢?

midline的值是于小于close[1]呢?
如果就你当前的代码,且条件满足,是会有信号的呀。
你可以使用commentary输出注释来看看条件 的满足情况。

使用道具 举报

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
5#
发表于 2018-10-24 17:14:47 |只看该作者
小米 发表于 2018-10-24 14:43
midline的值是于小于close[1]呢?
如果就你当前的代码,且条件满足,是会有信号的呀。
你可以使用comment ...

感谢版主回复,
If(close[1]>=MidLine)
{
        FileAppend("f:\\a.log","//close[1]:"+Text(close[1])+"//MidLine:"+Text(MidLine));
        SellShort(1,0);//平掉所有多仓,当前价开空
}
加了log信息,a.log中显示执行了FileAppend,但却不执行SellShort(,这是为什么呢?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
6#
发表于 2018-10-25 08:22:06 |只看该作者
ppzcgg 发表于 2018-10-24 17:14
感谢版主回复,
If(close[1]>=MidLine)
{

全局交易设置里的初始资金是多少?
另外在公式里加上这一句再看看输出值commentary("max="+text(maxbarsback)+"currentbar="+text(currentbar));

使用道具 举报

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
7#
发表于 2018-10-25 08:33:44 |只看该作者
小米 发表于 2018-10-25 08:22
全局交易设置里的初始资金是多少?
另外在公式里加上这一句再看看输出值commentary("max="+text(maxbarsb ...

一千万的模拟资金,加上commentary图表没变化。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
8#
发表于 2018-10-25 08:46:41 |只看该作者
ppzcgg 发表于 2018-10-25 08:33
一千万的模拟资金,加上commentary图表没变化。

commentary是注释语句,不会改变信号标识。是要看注释内容来判断问题。。

使用道具 举报

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
9#
发表于 2018-10-25 08:49:35 |只看该作者
我把所有语句都注释掉,公式中只剩下面的句子,把MidLine变为常数10800,居然也不能执行SellShort,这是为什么呢?
If(close[1]>=10800)//MidLine)
{
               
        FileAppend("f:\\a.log","//close[1]:"+Text(close[1])+"//MidLine:"+Text(MidLine));
        commentary("max="+text(maxbarsback)+"currentbar="+text(currentbar));
        SellShort(1,0);//平掉所有多仓,当前价开空
}

使用道具 举报

Rank: 1

精华
0
UID
269950
积分
25
帖子
19
主题
2
阅读权限
10
注册时间
2018-9-11
最后登录
2018-10-30
10#
发表于 2018-10-25 09:01:06 |只看该作者
小米 发表于 2018-10-25 08:46
commentary是注释语句,不会改变信号标识。是要看注释内容来判断问题。。


非得像下面这样才能执行,这是为什么呢?
If(close[1]>=12200)//MidLine)
{       
        FileAppend("f:\\a.log","//close[1]:"+Text(close[1])+"//MidLine:"+Text(MidLine));
        commentary("max="+text(maxbarsback)+"currentbar="+text(currentbar));
        SellShort(1,0);//平掉所有多仓,当前价开空
}               
       
If(close[1]<10700)//DownLine)
{
        Buy(1,0); //平掉所有空仓,当前价开多
}

使用道具 举报

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

bottom

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

GMT+8, 2024-4-25 11:32

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部