共13 条记录, 每页显示 10 条, 页签:
[1]
[2]
[浏览完整版]
标题:求助4:这个平空条件如何写?
1楼
九府巡按 发表于:2011/4/13 10:05:57
平空条件(由不同参数产生不同的平空条件,由用户自行选择):
五种平仓方式(五个参数可复选)
1. 自定义强制平仓时间(一个自由参数);
2、在某个时间Q前输r%平仓即买入价*(1-r%)平仓;(两个自由参数)
3、在某个时间Q前赚r%平仓 即买入价*(1+r%)平仓;(两个自由参数)
4、在某个时间Q前跟踪trail止盈(损)r%平仓即买入后达到最高点以下r%平仓(两个自由参数);
5、按公式来平仓。(假设N点满足条件,N点在Q之前),公式形如:
(
0-1之间的一个数Ж1)乘以 {M点所在1分钟的(
开盘价或最高价或最低价或收盘价,共四个参数)}(
大于或小于或等于或大于等于或小于等于,共六个参数)(
0-1之间的一个数Ж2)乘以 (
OMAX之类)(
加 或 减 或 乘 或 除共四个参数) (
0-1之间的数Ж3)乘以 (
OMAX之类)(
加 或 减 或 乘 或 除共四个参数) (
0-1之间的数Ж4)乘以 (
OMAX之类)
上述五种平仓方式共需要10组,每组独立拥有一套参数,执行相似功能,同步运作,互不干扰,即N系列包括(N1,N2, N3…N10);Ж系列包括(Ж101, Ж102, … , Ж110); Q系列包括(Q1,Q2, Q3…Q10);r系列包括(r1,r2, r3…r10);以及相关所需的操作符逻辑符10组
注释: 绿色文字表示这些参数是用户自由选择参数。
OMAX之类是指以下数据的其中一个:
从时间T之前的一段时间(时间B至时间C)内拿到的每一分钟的Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)。
这些参数的数据需保留备查,并且在每次下单时,将相应的(OMAX, OMIN。。。等内容记录在一个log文件中)
[此贴子已经被作者于2011-4-13 10:11:04编辑过]
2楼
董小球 发表于:2011/4/13 13:05:38
楼主你的条件我表示看不懂
建议你写成
1条件是什么
2条件是什么
3条件是什么
开多操作的时候需要满足那些条件
同理 开空等操作~
另外你说的什么N点 M点 怎么确认这些点位,你得吧自己的想法量化出来,我们才好写成代码!
3楼
九府巡按 发表于:2011/4/13 16:07:24
你好,根据你的要求,将条件作了一些修改,增加了一些内容。
交易标的:股指期货
下列用到的时间点,次序如图所示:
B--------------------C----------------A----------------E
准备工作:
在开盘以后的任何时间点假设是A点(该时间点A可选),可以拿到之前一段时间内(初始时间可选, 结束时间可选,假定时间B到时间C)每一分钟的Open的最大值(OMAX)(时间A到时间B之间有几个Open,就将这些Open取个最大值,其他同理),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最大值(CMAX),最小值(CMIN),平均值(CAVE)。
(这些参数的数据需保留备查,并且在每次下单时,将下单时间点相应的(OMAX, OMIN。。。等内容记录在一个log文件中))
监控并准备开仓的条件:
开多条件: 时间A到时间E之间的某一分钟如果出现:
( 0-1之间的数) 乘以(该分钟的High 或 Low 或 Open 或 Close) (大于 或 小于 或 等于) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)
以上()内的内容为自由定制内容。(上面表达式形如:0.2*High>0.11*OMAX-0.5*HAVE/0.7*LAVE)
如果A点就满足买入条件,就忽略买人条件,只监控抛空条件。
在时间A到E之间,最多建仓一次,平仓一次。
开空条件:时间A到时间E之间的某一分钟如果出现:
( 0-1之间的数) 乘以(该分钟的High 或 Low 或 Open 或 Close) (大于 或 小于 或 等于) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)
以上()内的内容为自由定制内容。(上面表达式形如:0.4*Low<0.99*OMAX/0.37*HAVE+0.19*CAVE)
如果A点就满足抛空条件,就忽略抛空条件,只监控买人条件。
在时间A到E之间,最多建仓一次,平仓一次。
建仓之后,有五种平仓方式(可复选)
1. 自定义强制平仓时间;(平仓时间可选)
2、在某段时间内输g%平仓(多仓就是买入价*(1-g%)平仓,空仓就是卖出价*(1+g%)平仓);(某段时间的开始和结束可选)
3、在某段时间内赚g%平仓(多仓就是买入价*(1+g%)平仓,空仓就是卖出价*(1-g%)平仓);(某段时间的开始和结束可选)
4、在某段时间内跟踪trail止盈(损)g%平仓(trail止盈(损) 是指买入后达到最高点以下g%,抛空后达到最低点以上g%);(某段时间的开始和结束可选)
5、在某段时间内某一分钟满足形如0.4*Low<0.95*OMAX/0.357*HMIN+0.119*CAVE的条件即平仓。平仓条件完整描述为:(某段时间的开始和结束可选)
( 0-1之间的数) 乘以(High 或 Low 或 Open 或 Close) (大于 或 小于 或 等于) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)(加 或 减 或 乘 或 除) (0-1之间的数)乘以 (OMAX之类)
以上()内的内容为自由定制内容。
以上参数需要有10套(每套执行相似功能,同步运作,互不干扰)。即(A包括 A1,A2,...,A10; B包括B1,B2,...,B10; 。。。。依此类推,另外平仓方式也需要有10套配套参数,需要用到OMAX1,OMAX2,HAVE10等配套数据共计120组)
[此贴子已经被作者于2011-4-13 16:15:18编辑过]
4楼
王锋 发表于:2011/4/13 16:19:20
楼主的要求的过于复杂,无法通过PEL语言完成,只能是VBA以上的策略语言才能完成,并且还要设计复杂的窗体,完整的策略要写完估计至少需要两个月以上的时间。
我们会根据实际情况只给您编一些示范性的策略,但这也需要一些日期,无法全部满足您的要求,如果你希望完整的策略编写服务,可以参考
http://www.7hcn.com/article/46287-1.html 期货中国网的有偿策略编写服务
[此贴子已经被作者于2011-4-13 16:22:10编辑过]
5楼
九府巡按 发表于:2011/4/13 16:46:36
6楼
guotx2010 发表于:2011/4/13 22:50:11
看到你的要求了,确实过于复杂,使用VBA都需要花较长时间写出来,估计没有人愿意免费帮你写。
我对VBA写策略比较熟悉,如果你愿意付费,我们可以谈谈。
7楼
stey 发表于:2011/4/19 15:04:25
{
5、在某段时间内某一分钟满足形如0.4*Low<0.95*OMAX/0.357*HMIN+0.119*CAVE的条件即平仓。平仓条件完整描述为:(某段时间的开始和结束可选)
( 0-1之间的数)VAR1 乘以 VAR2(High 或 low="Low" 或 open="Open" 或 Close) (大于 或 小于 或 等于)
VAR3(0-1之间的数)乘以 VAR4(OMAX之类)(加 或 减 或 乘 或 除) VAR5(0-1之间的数)乘以 VAR6(OMAX之类)
(加 或 减 或 乘 或 除) VAR7(0-1之间的数)乘以 VAR8(OMAX之类)
以上()内的内容为自由定制内容。
以上参数需要有10套(每套执行相似功能,同步运作,互不干扰)。即(A包括 A1,A2,...,A10; B包括B1,B2,...,B10; 。。。。依此类推,另外平仓方式也需要有10套配套参数,需要用到OMAX1,OMAX2,HAVE10等配套数据共计120组)
}
INPUT:P1(1,1,4,1){High 或 low="Low" 或 open="Open" 或 Close}
,P2(1,1,5,1){>,=,<,>=,<=,<>}
,P3(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
,P4(1,1,4,1){+,-,*,/}
,P5(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
,P6(1,1,4,1){+,-,*,/}
,P7(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
;
VAR1:=0.2;
VAR3:=0.95;
VAR5:=0.357;
VAR7:=0.119;
N:=10;
IF P1=1 THEN VAR2:=HIGH;
IF P1=2 THEN VAR2:=LOW;
IF P1=3 THEN VAR2:=OPEN;
IF P1=4 THEN VAR2:=CLOSE;
VARLEFT:=VAR1*VAR2;
IF P3=1 THEN VAR4:=HHV(O,N);
IF P3=2 THEN VAR4:=LLV(O,N);
IF P3=3 THEN VAR4:=MA(O,N);
{...}
IF P5=1 THEN VAR6:=HHV(O,N);
IF P5=2 THEN VAR6:=LLV(O,N);
IF P5=3 THEN VAR6:=MA(O,N);
{...}
IF P7=1 THEN VAR8:=HHV(O,N);
IF P7=2 THEN VAR8:=LLV(O,N);
IF P7=3 THEN VAR8:=MA(O,N);
{...}
IF P4=1 AND P6=1 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6+VAR7*VAR8;
IF P4=1 AND P6=2 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6-VAR7*VAR8;
IF P4=1 AND P6=3 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6*VAR7*VAR8;
IF P4=1 AND P6=4 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6/(VAR7*VAR8);
IF P4=2 AND P6=1 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6+VAR7*VAR8;
IF P4=2 AND P6=2 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6-VAR7*VAR8;
IF P4=2 AND P6=3 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6*VAR7*VAR8;
IF P4=2 AND P6=4 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6/(VAR7*VAR8);
IF P4=3 AND P6=1 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6+VAR7*VAR8;
IF P4=3 AND P6=2 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6-VAR7*VAR8;
IF P4=3 AND P6=3 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6*VAR7*VAR8;
IF P4=3 AND P6=4 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6/(VAR7*VAR8);
IF P4=4 AND P6=1 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)+VAR7*VAR8;
IF P4=4 AND P6=2 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)-VAR7*VAR8;
IF P4=4 AND P6=3 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)*VAR7*VAR8;
IF P4=4 AND P6=4 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)/(VAR7*VAR8);
{>,=,<,>=,<=,<>}
IF P2=1 THEN RESULT:=VARLEFT>VARRIGHT;
IF P2=2 THEN RESULT:=VARLEFT=VARRIGHT;
IF P2=3 THEN RESULT:=VARLEFT
=VARRIGHT;
IF P2=5 THEN RESULT:=VARLEFT<=VARRIGHT;
IF P2=6 THEN RESULT:=VARLEFT<>VARRIGHT;
AA:RESULT;
请参考
[此贴子已经被作者于2011-4-19 15:18:23编辑过]
8楼
admin 发表于:2011/4/19 15:12:07
连个段落也米有啊
9楼
stey 发表于:2011/4/19 15:20:45
{
5、在某段时间内某一分钟满足形如0.4*Low<0.95*OMAX/0.357*HMIN+0.119*CAVE的条件即平仓。平仓条件完整描述为:(某段时间的开始和结束可选)
( 0-1之间的数)VAR1 乘以 VAR2(High 或 low="Low" 或 open="Open" 或 Close) (大于 或 小于 或 等于)
VAR3(0-1之间的数)乘以 VAR4(OMAX之类)(加 或 减 或 乘 或 除) VAR5(0-1之间的数)乘以 VAR6(OMAX之类)
(加 或 减 或 乘 或 除) VAR7(0-1之间的数)乘以 VAR8(OMAX之类)
以上()内的内容为自由定制内容。
以上参数需要有10套(每套执行相似功能,同步运作,互不干扰)。即(A包括 A1,A2,...,A10; B包括B1,B2,...,B10; 。。。。依此类推,另外平仓方式也需要有10套配套参数,需要用到OMAX1,OMAX2,HAVE10等配套数据共计120组)
}
INPUT:P1(1,1,4,1){High 或 low="Low" 或 open="Open" 或 Close}
,P2(1,1,5,1){>,=,<,>=,<=,<>}
,P3(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
,P4(1,1,4,1){+,-,*,/}
,P5(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
,P6(1,1,4,1){+,-,*,/}
,P7(1,1,12,1){Open的最大值(OMAX),最小值(OMIN),平均值(OAVE);2、每一分钟的High的最大值(HMAX),最小值 (HMIN),平均值(HAVE);3、每一分钟的Low的最大值(LMAX),最小值(LMIN),平均值(LAVE);4、每一分钟的Close的最 大值(CMAX),最小值(CMIN),平均值(CAVE)}
;
VAR1:=0.2;
VAR3:=0.95;
VAR5:=0.357;
VAR7:=0.119;
N:=10;
IF P1=1 THEN VAR2:=HIGH;
IF P1=2 THEN VAR2:=LOW;
IF P1=3 THEN VAR2:=OPEN;
IF P1=4 THEN VAR2:=CLOSE;
VARLEFT:=VAR1*VAR2;
IF P3=1 THEN VAR4:=HHV(O,N);
IF P3=2 THEN VAR4:=LLV(O,N);
IF P3=3 THEN VAR4:=MA(O,N);
{...}
IF P5=1 THEN VAR6:=HHV(O,N);
IF P5=2 THEN VAR6:=LLV(O,N);
IF P5=3 THEN VAR6:=MA(O,N);
{...}
IF P7=1 THEN VAR8:=HHV(O,N);
IF P7=2 THEN VAR8:=LLV(O,N);
IF P7=3 THEN VAR8:=MA(O,N);
{...}
IF P4=1 AND P6=1 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6+VAR7*VAR8;
IF P4=1 AND P6=2 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6-VAR7*VAR8;
IF P4=1 AND P6=3 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6*VAR7*VAR8;
IF P4=1 AND P6=4 THEN VARRIGHT:=VAR3*VAR4+VAR5*VAR6/(VAR7*VAR8);
IF P4=2 AND P6=1 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6+VAR7*VAR8;
IF P4=2 AND P6=2 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6-VAR7*VAR8;
IF P4=2 AND P6=3 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6*VAR7*VAR8;
IF P4=2 AND P6=4 THEN VARRIGHT:=VAR3*VAR4-VAR5*VAR6/(VAR7*VAR8);
IF P4=3 AND P6=1 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6+VAR7*VAR8;
IF P4=3 AND P6=2 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6-VAR7*VAR8;
IF P4=3 AND P6=3 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6*VAR7*VAR8;
IF P4=3 AND P6=4 THEN VARRIGHT:=VAR3*VAR4*VAR5*VAR6/(VAR7*VAR8);
IF P4=4 AND P6=1 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)+VAR7*VAR8;
IF P4=4 AND P6=2 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)-VAR7*VAR8;
IF P4=4 AND P6=3 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)*VAR7*VAR8;
IF P4=4 AND P6=4 THEN VARRIGHT:=VAR3*VAR4/(VAR5*VAR6)/(VAR7*VAR8);
{>,=,<,>=,<=,<>}
IF P2=1 THEN RESULT:=VARLEFT>VARRIGHT;
IF P2=2 THEN RESULT:=VARLEFT=VARRIGHT;
IF P2=3 THEN RESULT:=VARLEFT
=VARRIGHT;
IF P2=5 THEN RESULT:=VARLEFT<=VARRIGHT;
IF P2=6 THEN RESULT:=VARLEFT<>VARRIGHT;
AA:RESULT;
请参考
10楼
stey 发表于:2011/4/19 15:21:23
共13 条记录, 每页显示 10 条, 页签:
[1]
[2]