Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:空单止盈了,为什么也打印出“空损”

1楼
wn10000neng 发表于:2013/4/11 10:09:10

我的空单止盈的代码如下:

if holding < 0 and ENTERBARS > 0 then //空单的止盈止损
begin

IF AVGENTERPRICE - C >= 30* mindiff then
begin
    SELLSHORT(1,0,MARKETR);//止盈30个点
    DRAWTEXT(1,h,'空盈');
end

IF C - AVGENTERPRICE >= 20*MINDIFF then
begin
    SELLSHORT(1,0,MARKETR);//止损20个点
    DRAWTEXT(1,l,'空损');
end

if ISLASTBAR then
    DEBUGFILE('d:\止盈止损条件.txt','空单平均成本:avgenterprice:%.2f',avgenterprice);
    DEBUGFILE('D:\止盈止损条件.TXT','空盈条件 '&'c:'& numtostr(c,2)&' avgenterprice:'&numtostr(avgenterprice,2)&' AVGENTERPRICE - C:'&numtostr(AVGENTERPRICE - C,2)&' 30*mindiff:'&numtostr(30*mindiff,2),0);
    DEBUGFILE('D:\止盈止损条件.TXT','空损条件 '&'c:'& numtostr(c,2)&' avgenterprice:'&numtostr(avgenterprice,2)&' C - AVGENTERPRICE:'&numtostr(C - AVGENTERPRICE,2)&' 20*mindiff:'&numtostr(20*mindiff,2),0);
    
end


每次止盈的时候,DRAWTEXT(1,l,'空损');这个语句也会执行,也打印出了“空损”


好像是AVGENTERPRICE的问题,出现信号后,还没平仓的时候,AVGENTERPRICE变为0了,导致C - AVGENTERPRICE变成最新价,超过了20*MINDIFF,止损条件成立(但实际是止盈的,这只是AVGENTERPRICE提前变为0导致的)
但为什么AVGENTERPRICE变为0后,止盈的条件还会执行呢,因为AVGENTERPRICE - C变成了最新价的负值,不会大于30*MINDIFF了

可能是金字塔内部机制就是这样的


2013-04-11 09:49:21.671    空盈条件 c:2498.60 avgenterprice:2502.94 AVGENTERPRICE - C:4.34 30*mindiff:6.00
2013-04-11 09:49:21.671    空损条件 c:2498.60 avgenterprice:2502.94 C - AVGENTERPRICE:-4.34 20*mindiff:4.00
2013-04-11 09:49:23.171    空单平均成本:avgenterprice:2502.94
2013-04-11 09:49:23.171    空盈条件 c:2497.80 avgenterprice:2502.94 AVGENTERPRICE - C:5.14 30*mindiff:6.00
2013-04-11 09:49:23.171    空损条件 c:2497.80 avgenterprice:2502.94 C - AVGENTERPRICE:-5.14 20*mindiff:4.00
2013-04-11 09:49:24.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:24.671    空盈条件 c:2496.20 avgenterprice:0.00 AVGENTERPRICE - C:-2496.20 30*mindiff:6.00
2013-04-11 09:49:24.671    空损条件 c:2496.20 avgenterprice:0.00 C - AVGENTERPRICE:2496.20 20*mindiff:4.00
2013-04-11 09:49:26.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:26.171    空盈条件 c:2494.60 avgenterprice:0.00 AVGENTERPRICE - C:-2494.60 30*mindiff:6.00
2013-04-11 09:49:26.171    空损条件 c:2494.60 avgenterprice:0.00 C - AVGENTERPRICE:2494.60 20*mindiff:4.00
2013-04-11 09:49:27.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:27.671    空盈条件 c:2492.60 avgenterprice:0.00 AVGENTERPRICE - C:-2492.60 30*mindiff:6.00
2013-04-11 09:49:27.671    空损条件 c:2492.60 avgenterprice:0.00 C - AVGENTERPRICE:2492.60 20*mindiff:4.00
2013-04-11 09:49:29.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:29.171    空盈条件 c:2492.20 avgenterprice:0.00 AVGENTERPRICE - C:-2492.20 30*mindiff:6.00
2013-04-11 09:49:29.171    空损条件 c:2492.20 avgenterprice:0.00 C - AVGENTERPRICE:2492.20 20*mindiff:4.00
2013-04-11 09:49:32.312    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:32.312    空盈条件 c:2492.00 avgenterprice:0.00 AVGENTERPRICE - C:-2492.00 30*mindiff:6.00
2013-04-11 09:49:32.312    空损条件 c:2492.00 avgenterprice:0.00 C - AVGENTERPRICE:2492.00 20*mindiff:4.00
2013-04-11 09:49:33.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:33.671    空盈条件 c:2493.40 avgenterprice:0.00 AVGENTERPRICE - C:-2493.40 30*mindiff:6.00
2013-04-11 09:49:33.671    空损条件 c:2493.40 avgenterprice:0.00 C - AVGENTERPRICE:2493.40 20*mindiff:4.00
2013-04-11 09:49:35.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:35.171    空盈条件 c:2493.80 avgenterprice:0.00 AVGENTERPRICE - C:-2493.80 30*mindiff:6.00
2013-04-11 09:49:35.171    空损条件 c:2493.80 avgenterprice:0.00 C - AVGENTERPRICE:2493.80 20*mindiff:4.00
2013-04-11 09:49:36.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:36.671    空盈条件 c:2494.00 avgenterprice:0.00 AVGENTERPRICE - C:-2494.00 30*mindiff:6.00
2013-04-11 09:49:36.671    空损条件 c:2494.00 avgenterprice:0.00 C - AVGENTERPRICE:2494.00 20*mindiff:4.00
2013-04-11 09:49:38.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:38.171    空盈条件 c:2494.00 avgenterprice:0.00 AVGENTERPRICE - C:-2494.00 30*mindiff:6.00
2013-04-11 09:49:38.171    空损条件 c:2494.00 avgenterprice:0.00 C - AVGENTERPRICE:2494.00 20*mindiff:4.00
2013-04-11 09:49:39.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:39.671    空盈条件 c:2494.40 avgenterprice:0.00 AVGENTERPRICE - C:-2494.40 30*mindiff:6.00
2013-04-11 09:49:39.671    空损条件 c:2494.40 avgenterprice:0.00 C - AVGENTERPRICE:2494.40 20*mindiff:4.00
2013-04-11 09:49:41.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:41.171    空盈条件 c:2493.80 avgenterprice:0.00 AVGENTERPRICE - C:-2493.80 30*mindiff:6.00
2013-04-11 09:49:41.171    空损条件 c:2493.80 avgenterprice:0.00 C - AVGENTERPRICE:2493.80 20*mindiff:4.00
2013-04-11 09:49:42.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:42.671    空盈条件 c:2493.60 avgenterprice:0.00 AVGENTERPRICE - C:-2493.60 30*mindiff:6.00
2013-04-11 09:49:42.671    空损条件 c:2493.60 avgenterprice:0.00 C - AVGENTERPRICE:2493.60 20*mindiff:4.00
2013-04-11 09:49:44.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:44.171    空盈条件 c:2494.00 avgenterprice:0.00 AVGENTERPRICE - C:-2494.00 30*mindiff:6.00
2013-04-11 09:49:44.171    空损条件 c:2494.00 avgenterprice:0.00 C - AVGENTERPRICE:2494.00 20*mindiff:4.00
2013-04-11 09:49:45.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:45.671    空盈条件 c:2493.80 avgenterprice:0.00 AVGENTERPRICE - C:-2493.80 30*mindiff:6.00
2013-04-11 09:49:45.671    空损条件 c:2493.80 avgenterprice:0.00 C - AVGENTERPRICE:2493.80 20*mindiff:4.00
2013-04-11 09:49:47.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:47.171    空盈条件 c:2493.40 avgenterprice:0.00 AVGENTERPRICE - C:-2493.40 30*mindiff:6.00
2013-04-11 09:49:47.171    空损条件 c:2493.40 avgenterprice:0.00 C - AVGENTERPRICE:2493.40 20*mindiff:4.00
2013-04-11 09:49:48.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:48.671    空盈条件 c:2493.80 avgenterprice:0.00 AVGENTERPRICE - C:-2493.80 30*mindiff:6.00
2013-04-11 09:49:48.671    空损条件 c:2493.80 avgenterprice:0.00 C - AVGENTERPRICE:2493.80 20*mindiff:4.00
2013-04-11 09:49:50.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:50.171    空盈条件 c:2493.60 avgenterprice:0.00 AVGENTERPRICE - C:-2493.60 30*mindiff:6.00
2013-04-11 09:49:50.171    空损条件 c:2493.60 avgenterprice:0.00 C - AVGENTERPRICE:2493.60 20*mindiff:4.00
2013-04-11 09:49:51.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:51.671    空盈条件 c:2494.20 avgenterprice:0.00 AVGENTERPRICE - C:-2494.20 30*mindiff:6.00
2013-04-11 09:49:51.671    空损条件 c:2494.20 avgenterprice:0.00 C - AVGENTERPRICE:2494.20 20*mindiff:4.00
2013-04-11 09:49:53.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:53.171    空盈条件 c:2494.80 avgenterprice:0.00 AVGENTERPRICE - C:-2494.80 30*mindiff:6.00
2013-04-11 09:49:53.171    空损条件 c:2494.80 avgenterprice:0.00 C - AVGENTERPRICE:2494.80 20*mindiff:4.00
2013-04-11 09:49:54.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:54.671    空盈条件 c:2494.60 avgenterprice:0.00 AVGENTERPRICE - C:-2494.60 30*mindiff:6.00
2013-04-11 09:49:54.671    空损条件 c:2494.60 avgenterprice:0.00 C - AVGENTERPRICE:2494.60 20*mindiff:4.00
2013-04-11 09:49:56.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:56.171    空盈条件 c:2494.40 avgenterprice:0.00 AVGENTERPRICE - C:-2494.40 30*mindiff:6.00
2013-04-11 09:49:56.171    空损条件 c:2494.40 avgenterprice:0.00 C - AVGENTERPRICE:2494.40 20*mindiff:4.00
2013-04-11 09:49:57.671    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:57.671    空盈条件 c:2494.40 avgenterprice:0.00 AVGENTERPRICE - C:-2494.40 30*mindiff:6.00
2013-04-11 09:49:57.671    空损条件 c:2494.40 avgenterprice:0.00 C - AVGENTERPRICE:2494.40 20*mindiff:4.00
2013-04-11 09:49:59.171    空单平均成本:avgenterprice:0.00
2013-04-11 09:49:59.171    空盈条件 c:2494.40 avgenterprice:0.00 AVGENTERPRICE - C:-2494.40 30*mindiff:6.00
2013-04-11 09:49:59.171    空损条件 c:2494.40 avgenterprice:0.00 C - AVGENTERPRICE:2494.40 20*mindiff:4.00

 

我是9:50止盈的,但注意看止盈条件,AVGENTERPRICE - C:-2494.40,是个负值

2楼
fly 发表于:2013/4/11 10:18:02

一次扫描,止盈语句在前,止盈执行后,AVGENTERPRICE变为0.

 

图表程序化,每次扫描,都会从图表上第一根K线重新开始计算一遍你的程序.你可以在"止盈"语句前面再输出AVGENTERPRICE的值看看.

3楼
jinzhe 发表于:2013/4/11 10:18:41

 

[此贴子已经被作者于2013-4-11 10:19:23编辑过]
4楼
jinzhe 发表于:2013/4/11 10:20:59

把那两个差值各写成一个条件

再用shift+q调试

[此贴子已经被作者于2013-4-11 10:21:09编辑过]
5楼
wn10000neng 发表于:2013/4/11 10:28:28

为什么会这样我是懂了,但怎么改,才能止盈它就只输出“空盈”,止损它就只输出“空损”

6楼
wn10000neng 发表于:2013/4/11 12:05:18
没人吗
7楼
jinzhe 发表于:2013/4/11 13:17:41

在条件中加上类似 holding<0这样的仓位控制语句

if c-a<30 and holding<0 then

8楼
fly 发表于:2013/4/12 9:29:18

IF AVGENTERPRICE - C >= 30* mindiff and holding < 0 and ENTERBARS > 0 then//空单的止盈

begin
    SELLSHORT(1,0,MARKETR);//止盈30个点
    DRAWTEXT(1,h,'空盈');
end

 

IF C - AVGENTERPRICE >= 20*MINDIFF and holding < 0 and ENTERBARS > 0 then//空单的止损
begin
    SELLSHORT(1,0,MARKETR);//止损20个点
    DRAWTEXT(1,l,'空损');
end

共8 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01172 s, 3 queries.