以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [分享]反复开仓、K线走完后才发信号的解决心得 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=162) |
-- 作者:bhwhui -- 发布时间:2009/11/11 2:54:01 -- [分享]反复开仓、K线走完后才发信号的解决心得 承管理员厚爱,一直享受正版用户待遇,得以测试最新版金字塔软件的各种特色功能,现将一些程序化交易心得分享,让后来者少走一些弯路。当然,这也是不断叨唠管理员的结果,呵呵呵
问题提出: 以日k线为例子,比如我选择两条MA(close)系统,5日线和20日线,5日上叉20日买入,5日下叉20日卖出。
其他的解决方案: 1:如果有更细致的数据,比如说5分钟数据,那么可以用5分钟的收盘价来判断; 2:不必等收盤確認,盤中信號出現后,在K柱高低點放掛單,等其通道突破 3:可以附加一个判断条件:看你上一级的均线是否同信号方向一致。 一致的话,胜算会高些 4:一定要等收盘价确认已经交叉后才能采取行动,如果有大阴大阳那就等回撤
待续。。。 [此贴子已经被作者于2009-11-11 2:54:49编辑过]
|
-- 作者:bhwhui -- 发布时间:2009/11/11 3:06:38 -- 注意:金字塔软件所说的“在同一周期内不会反复开平仓”是指:“不重复开仓指的是你公式所用周期的时间,在同一K线上金字塔只做一次开仓或者平仓动作,如果你是在30MIN周期上,那么30MIN时间内,只做一次开仓信号,如果你预警周期设的1秒这样很短周期,也不会再次重复开仓”
注意细节是:金字塔自动交易,不是在K线最后一刻才发交易指令的,而是根据预警间隔周期不同一直在做交易判断。 呵呵呵,和我理解的反复开平仓不是同一个意思。
大家首先想到用时间来控制,ok,没问题,实际可以做得到,代码如下:注意看论坛上Time,CurrentTime 的区别
input:mark(1,1,2),zq(1,0,19),sec(1,1,10); //市场1:上海,2其他,工作周期,提前秒数 time_ok:=0; //当前Ctime:STRTONUM(currentTIME); ok1:=(mark=1 and (l4>0900 and l4<=1015 or l4>1030 and l4<=1130 or l4>1330 and l4<=1410 or l4>1420 and l4<=1500)); if (60-r2)<=sec and (ok1 or ok2) then //15min上海市场 时间:time_ok;
经测试,还行,不够稳定。如果59秒的时候计算机很忙,很容易错过某次信号,造成灾难性后果 [此贴子已经被作者于2009-11-11 3:21:42编辑过]
|
-- 作者:bhwhui -- 发布时间:2009/11/11 3:12:01 -- 有没有简单的方法?有,呵呵,看下面的例子:双均线交易.
input:man1(12),man2(26); ma1:ma(close,man1),colorred; ts:=iif(ma1>ma2,1,iif(ma1<ma2,-1,0)); //注意
ts_1:=ref(ts,1);
{平多}
资产_control:asset,COLORCYAN,noaxis;
问题解决了,如果采用其他解决方案,代码比较长,不例举了,有兴趣,大家一起探讨。
本文意在回馈论坛,因为从版主,管理员那学到很多东西,打扰了很长时间,听说在以后1.94版,这个问题会得到完满的解决,让我们拭目以待。。。。 [此贴子已经被作者于2009-11-11 3:15:08编辑过]
|
-- 作者:bhwhui -- 发布时间:2009/11/11 3:19:40 -- 有没有更简单的?更通用的?有,利用T函数和非T函数的区别来控制,把这个话题留给后来者。。。 |
-- 作者:dzfp2010 -- 发布时间:2010/3/27 22:27:05 -- 期待楼主下面的帖子,不过,你提出的问题,并没有从根本上得到解决啊。。。
我建议“金字塔”增加一个函数:LTime(N),参数N表示毫秒,整个函数表示:在当前周期下,如果N秒后K线将走完,则返回1,否则返回0; [此贴子已经被作者于2010-3-27 22:38:43编辑过]
|
-- 作者:圆周工作室 -- 发布时间:2010/3/31 21:25:05 -- 以下是引用dzfp2010在2010-3-27 22:27:05的发言:
期待楼主下面的帖子,不过,你提出的问题,并没有从根本上得到解决啊。。。
我建议“金字塔”增加一个函数:LTime(N),参数N表示毫秒,整个函数表示:在当前周期下,如果N秒后K线将走完,则返回1,否则返回0; [此贴子已经被作者于2010-3-27 22:38:43编辑过] 你自己计算一下K线是否准备走完就得了
一个当前时间到下跟K线起始点的时间差就得了 |
-- 作者:程序化交易者 -- 发布时间:2010/5/16 11:13:31 -- 怎样能做到指令价开仓 请教老师!怎样能做到指令价开仓?比如CROSS(MA(C,5),MA(C,10)):的交叉点开仓。谢谢! |
-- 作者:hxbhz -- 发布时间:2010/7/29 11:46:34 -- 学习了,这个问题也困扰我好久了 |