以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- -----最高价格 回落止损问题 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=142144) |
-- 作者:TomRidder716 -- 发布时间:2016/11/3 4:05:53 -- -----最高价格 回落止损问题 IF DYNAINFO( 7) >A THEN BEGIN//MAKE A MAX A:= DYNAINFO( 7); END IF A - DYNAINFO( 7) >10 * MINDIFF THEN BEGIN//IF BIGGER THEN SELL SELL(1,HOLDER,MARKET); A:=0; END 以上代码表示的将 最高价格复制给变量a 当最新价格比最大价格未落10个价位时候 sell 但是测试的时候 有没有这段代码都是一个结果 出了 什么问题呢??
|
-- 作者:jinzhe -- 发布时间:2016/11/3 9:04:15 -- 同你之前发的帖子一样,动态行情函数问题,不能用在图表交易里面 |
-- 作者:TomRidder716 -- 发布时间:2016/11/3 9:47:53 -- 之前的那次其实是全局变量问题 不是dynainfo的问题 去掉 extgbdata 留着 dynainfo 是 可以测试的 但是这段就不行了 如果非要替换的话 用什么替换dynainfo(7)呢 谢谢 |
-- 作者:jinzhe -- 发布时间:2016/11/3 9:54:22 -- 有值也不表示你写的就是对的,动态行情函数用在图表里面会出问题,不是表示动态行情在图表里面会没有值 variable:n=0;
if 开仓条件 and holding=0 then begin buy.....; n:=enterprice; end
if h>n and holding>0 then n:=h;
if c<n-10 then sell.........; [此贴子已经被作者于2016-11-3 9:55:15编辑过]
|
-- 作者:TomRidder716 -- 发布时间:2016/11/3 10:07:44 -- 感谢解答 等下试试上面的代码 1.有没有什么好的方法能把 后台 和图表结合到一起呢 2.我改写的系统是双轨道 ,所以一定是 图表交易系统吗 |
-- 作者:TomRidder716 -- 发布时间:2016/11/3 10:12:45 -- 所以 后台交易系统 一般用于高频交易吗 |
-- 作者:jinzhe -- 发布时间:2016/11/3 10:15:57 -- 1.两个是独立的系统,不要混用 2.看你用后台代码写还是图表写 3.没有这样的说法,全周期都能用 |
-- 作者:TomRidder716 -- 发布时间:2016/11/3 10:27:34 -- 1.怎么把我的双轨道 改写成 后台呢 具体要改哪部分代码呢? //中间变量 INPUT:N(16,1,30,1),K1(0.4,0.1,1,0.1),K2(0.8,0.1,1,0.1),NMIN(6,1,10,1),SS(1000,100,1000,100); CYC:=BARSLAST(DATE<>REF(DATE,1))+1; LHIGH:=CALLSTOCK(STKLABEL,VTHIGH,6,-1); LLOW:=CALLSTOCK(STKLABEL,VTLOW,6,-1); LCLOSE:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1); TOPEN:=VALUEWHEN(CYC=1,OPEN); HH:=HHV(LHIGH,N);//N日HIGH的最高价 HC:=HHV(LCLOSE,N);//N日CLOSE的最高价 LC:=LLV(LCLOSE,N);//N日CLOSE的最低价 LL:=LLV(LLOW,N);//N日LOW的最低价 MOVING:=MAX(HH-LL,HC-LL);//RANGE T1:=TIME>=091000 AND TIME<=145200; T2:=TIME>=145400 AND TIME<=150000; HOLDER:=SS; UP:TOPEN+K1*MOVING; DOWN:TOPEN-K2*MOVING; BUYCON:=C>UP AND HOLDING=0 ; BUYSHORTCON:=C<DOWN AND HOLDING=0 ; VARIABLE:A:=0; VARIABLE:B:=0; VARIABLE:MAXP:=0; VARIABLE:P:=0; VARIABLE:MAXP:=0; VARIABLE:DOWN:=0; ///每天的 开盘的时候 持仓为0 且没有开过仓 IF TIME >=090000 AND TIME <=090200 THEN BEGIN B:=0;//A 代表是否有仓位 b代表是否开过仓位 A:=0; END /// //持有空仓的情况 IF HOLDING=0 THEN BEGIN IF T1 THEN BEGIN IF BUYCON THEN BEGIN BUY( B=0 AND A=0,HOLDER,MARKET); A:=1; B:=1; P:=AVGENTERPRICE(); MAXP:=0; END IF BUYSHORTCON THEN BEGIN BUYSHORT( B=0 AND A=0,HOLDER,MARKET); A:=-1; B:=1; P:=0; MAXP:=0; END END END IF HOLDING>0 THEN BEGIN IF T1 THEN BEGIN //最高价格 浮亏10跳 止盈操作 If ENTERBARS>0 then begin { IF h >p THEN BEGIN//MAKE A MAX p:= h; END IF p - C >10 * MINDIFF THEN BEGIN//IF BIGGER THEN SELL SELL(1,HOLDER,MARKET); A:=0; B:=1; MAXP:=0; p:=0; END } // ////////+百分比止盈 { P:=(O-AVGENTERPRICE())/AVGENTERPRICE() *100; IF P>MAXP THEN BEGIN MAXP=P; DOWN:=(MAXP-P)/MAXP*100; END IF DOWN >=90 THEN BEGIN SELL(1,HOLDER,MARKET); MAXP:=0; P:=0; A:=0; B:=1; END } /////////////////////// //浮亏10跳 止损 IF ( AVGENTERPRICE()- DYNAINFO( 7)>10*MINDIFF) THEN BEGIN SELL(1,HOLDER,MARKET); A:=0; B:=1; END end // END IF T2 THEN BEGIN SELL(1,HOLDER,MARKET); A:=0; B:=1; END END IF HOLDING<0 THEN BEGIN IF T1 THEN BEGIN IF ( DYNAINFO( 7)-AVGENTERPRICE()>10*MINDIFF) THEN BEGIN SELLSHORT(1,HOLDER,MARKET); A:=0; B:=1; END END IF T2 THEN BEGIN SELLSHORT(1,HOLDER,MARKET); A:=0; B:=1; END END 当前持仓:HOLDING,COLORGRAY,LINETHICK0; 当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值 |
-- 作者:jinzhe -- 发布时间:2016/11/3 10:40:58 -- 请出示专业版帐号 |
-- 作者:TomRidder716 -- 发布时间:2016/11/3 10:46:06 -- 专业版账号是500026 |