以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  定位价格  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=144296)

--  作者:曹晓东
--  发布时间:2016/12/8 9:09:22
--  定位价格

a1:=ma(c,10);
PARTLINE(a1>=ref(a1,1),a1,colorred,2);
PARTLINE(a1<ref(a1,1),a1,colorgreen,2);
a2:=ma(c,22);
PARTLINE(a2>=ref(a2,1),a2,colorred,3);
PARTLINE(a2<ref(a2,1),a2,colorgreen,3);
variable:n=0,m=0;
mm:=ref(h,1)=hhv(h,3);
nn:=ref(l,1)=llv(l,3);

variable:bj=0;

nn1:=barslast(mm);
nn2:=barslast(nn);
if c<ref(l,nn1+1)  then bj:=1;
if c>ref(h,nn2+1)  then bj:=-1;

uu3:=cross(bj=1,0.5);
uu4:=cross(bj=-1,0.5);
if uu3 or ((ref(c,1)>ref(o,1) and h>ref(h,1) and c<ref(l,1))) or (ref(h,1)=hhv(h,3) and c<ref(l,1)) or c<ref(l,barslast(c>o)) then begin
 n:=0;
 m:=m+1;
end

//m为绿色
if uu4 or (ref(l,1)=llv(l,3) and c>ref(h,1)) or ((ref(o,1)>ref(c,1) and l<ref(l,1) and c>ref(h,1))) or c>ref(h,barslast(c<o)) then begin
 n:=n+1;
 m:=0;
end
//n为红色
STICKLINE(cross(m,0.5),o,CLOSE,7.5,0),COLORgreen;
STICKLINE(cross(n,0.5),o,c,7.5,0),COLORred;

 

 

如图   找到这两个价格,临界的价格。每次变红或绿的临界价格都找出来。谢谢


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20161208090812.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2016/12/8 9:18:28
--  

绿色:valuewhen(cross(m,0.5),close);

红色:valuewhen(cross(n,0.5),close);


--  作者:曹晓东
--  发布时间:2016/12/8 9:20:33
--  
不是那根的收盘价   是那根在走的时候变红或者变绿的临界的价格   
[此贴子已经被作者于2016-12-8 9:20:53编辑过]

--  作者:曹晓东
--  发布时间:2016/12/8 9:43:04
--  

懂么懂啊   给句话啊

 


--  作者:jinzhe
--  发布时间:2016/12/8 9:53:39
--  
这个获取不了
--  作者:曹晓东
--  发布时间:2016/12/8 10:18:39
--  

 

a1:=ma(c,10);
PARTLINE(a1>=ref(a1,1),a1,colorred,2);
PARTLINE(a1<ref(a1,1),a1,colorgreen,2);
a2:=ma(c,22);
PARTLINE(a2>=ref(a2,1),a2,colorred,3);
PARTLINE(a2<ref(a2,1),a2,colorgreen,3);

a3:=ma(c,10)>=ref(ma(c,10),1) and ma(c,22)>=ref(ma(c,22),1);
a8:=ma(c,10)<ref(ma(c,10),1) and ma(c,22)<ref(ma(c,22),1);

variable:n=0,m=0;
mm:=ref(h,1)=hhv(h,3);
nn:=ref(l,1)=llv(l,3);

variable:bj=0;

mm:=ref(h,1)=hhv(h,3);
nn:=ref(l,1)=llv(l,3);

if mm then bj:=1;
if nn then bj:=-1;
nn1:=barslast(mm);
nn2:=barslast(nn);
if c<ref(l,nn1+1) and bj=1 then i:=1;
if c>ref(h,nn2+1) and bj=-1 then i:=-1;

uu3:=cross(i=1,0.5);
uu4:=cross(i=-1,0.5);
if uu3 or ((ref(c,1)>ref(o,1) and h>ref(h,1) and c<ref(l,1))) or (ref(h,1)=hhv(h,3) and c<ref(l,1)) or c<ref(l,barslast(c>o)) then begin
 n:=0;
 m:=m+1;
end

//m为绿色
if uu4 or (ref(l,1)=llv(l,3) and c>ref(h,1)) or ((ref(o,1)>ref(c,1) and l<ref(l,1) and c>ref(h,1))) or c>ref(h,barslast(c<o)) then begin
 n:=n+1;
 m:=0;
end
//n为红色
STICKLINE(cross(m,0.5),o,CLOSE,7.5,0),COLORgreen;
STICKLINE(cross(n,0.5),o,c,7.5,0),COLORred;


if cross(m,0.5) and a8 and holding=0 then begin
buyshort(holding=0,1,market);
end

if cross(n,0.5) and a3 and holding=0 then begin
buy(holding=0,1,market);
end

if HOLDING<=0 and cross(n,0.5)  and a3  then begin
 if holding<0 then SELLSHORT(1,0,MARKET);
 BUY(holding=0,1,MARKET);
 end
 if HOLDING>0 and cross(m,0.5) and a8  then begin
 if holding>0 then SELL(1,0,MARKET);
 BUYshort(holding=0,1,MARKET);
 end

止多:=如果有多单,红色出现后,当前价格大于上一个绿色的最高点,多单止损为最近的红色最低点;如果最近的红色出现后,当前价格没有高于上一次绿色的最高点,多单止盈或止损为最近变红再前一次红色的最低价。
止空:=如果有空单,绿色出现后,当前价格小于上一个红色的最低点,空单止损为最近的红色最高点;如果最近的绿色出现后,当前价格没有低于上一次红色的最低点,空单止盈或止损为最近变绿在前一次变绿的最高价。
  

 

麻烦按这个思路帮我写个止盈止损出场条件。


--  作者:jinzhe
--  发布时间:2016/12/8 10:40:48
--  
“如果有多单,红色出现后”,下面图里面的3根k线,是都算,还是算某一根?
图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2016-12-8 10:40:57编辑过]

--  作者:曹晓东
--  发布时间:2016/12/8 10:48:02
--  
“出现红色”里面的红色是指整根k线变为红色,你接的图中那个写着“开多,平空”的k线。
--  作者:jinzhe
--  发布时间:2016/12/8 10:49:58
--  
"红色出现后,当前价格大于上一个绿色的最高点",“出现后”是我上面图里的哪一个或者都是
--  作者:曹晓东
--  发布时间:2016/12/8 10:56:45
--  
都是  只要红色出现了  没有出现绿色柱之前,都是“红色出现后”