请把以下编码输入技术指标副图显示效果。
INPUT:N(18),P1(8),P2(8);
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
买:if(K<20,1,0),linethick2,linestick,COLORMAGENTA;
卖:if(K>80,-1,0),linethick2,linestick,COLORCYAN;
我以KDJ指标为例说一下我的策略,请帮忙编写一下,我实在编写不出了。
1.当K向上突破80,卖平开
2.当卖平开,仓后画一条止损线:5日最高价,以此价固定不变直到下一个条件信号出现
3.当收盘价突破止损线,反手平仓开多,在此之后出现的K突破80,都视为无效,而是用收盘价跌破10日均线作为条件平多仓。
1.当K向下跌破20,买平开
2.当买平开,仓后画一条止损线:5日最低价,以此价固定不变直到下一个条件信号出现
3.当收盘价跌破止损线,反手平仓开空,在此之后出现的K跌破20,都视为无效,而是用收盘价突破10日均线作为条件平空仓。
麻烦哪位大侠编写一下
{金字塔群,QQ股指提供策略
1当K向上突破80,卖平开
2当卖平开,仓后画一条止损线:5日最高价,以此价固定不变直到下一个条件信号出现
3.当收盘价突破止损线,反手平仓开多,在此之后出现的K突破80,都视为无效,而是用收盘价跌破10日均线作为条件平多仓。
1当K向下跌破20,买平开
2.当买平开,仓后画一条止损线:5日最低价,以此价固定不变直到下一个条件信号出现
3.当收盘价跌破止损线,反手平仓开空,在此之后出现的K跌破20,都视为无效,而是用收盘价突破10日均线作为条件平空仓。
}
INPUT:N(18),P1(8),P2(8);
RUNMODE:0; //使用逐周期运行模式
variable:Trend=0; //持仓标记,-1空单,1多单
variable:SAR0=0; //反手持仓标记,0无反手持仓。1为反手持仓
variable:value=0; //传递止损点的中间变量
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
myH:=HHV(H,5);
myL:=LLV(L,5);
if barpos <= N+P1+P2+1 then
exit;//不到N+P1+P2+1的统计周期,直接退出等待下个周期再做判断
//初始化数据,使持仓标记和止损点有确定的值
if barpos = N+P1+P2+2 then
begin
if K-REF(K,1) < 0 then
begin
//看跌
Trend:= -1; //空单标志
value:=myH; //止损点取5日高点
end
else
begin
//看涨
Trend:= 1; //多单标志
value:=myL; //止损点取5日低点
end
End
mystop:=value; // 设定止损点
//原始开仓信号
B:=cross(20,K);// 买平开
S:=cross(K,80);// 卖平开
//止损反手信号
B_stop:=cross(C,mystop); //空头止损并反手
S_stop:=cross(mystop,C); //多头止损并反手
//反手信号的平仓
stopB:=cross(C,ma(C,10));//反手的空单平仓
stopS:=cross(ma(C,10),C);//反手的多单平仓
//进入策略逻辑的条件转换
if Trend > 0 and SAR0=0 then // (多单标记 且 无反手持仓)
begin
if S_stop then // 多头止损并反手,SAR0标记为1
begin
Trend:=-1;
SELL(Trend=-1);
BUYSHORT(Trend=-1);
value:=myH;
SAR0:=1;
end
if S then // 原始空平开信号,SAR0标记为0
begin
Trend:=-1;
SELL(Trend=-1);
BUYSHORT(Trend=-1);
value:=myH;
SAR0:=0;
end
end
if Trend < 0 and SAR0=0 then // (空单标记 且 无反手持仓)
begin
if B_stop then // 空头止损并反手,SAR0标记为1
begin
Trend:=-1;
SELL(Trend=-1);
BUYSHORT(Trend=-1);
value:=myH;
SAR0:=1;
end
if B then // 原始买平开信号,SAR0标记为0
begin
Trend:=1;
SELLSHORT(Trend=1);
BUY(Trend=1);
value:=myL;
sar0:=0;
end
end
if sar0=1 then //持有反手仓
begin
if Trend>0 and stopS then //反手仓多单平仓,SAR0归0
begin
Trend:=-1;
SELL(Trend=-1);
BUYSHORT(Trend=-1);
value:=myH;
SAR0:=0;
end
if Trend<0 and stopB then //反手空单平仓,SAR0归0
begin
Trend:=1;
SELLSHORT(Trend=1);
BUY(Trend=1);
value:=myL;
sar0:=0;
end
end
//显示止损点,可删
IF Trend>0 then
mystop,circledot, colorred;
else
mystop,circledot, colorgreen;
把策略分成几种情况,就比较清晰了
1、持有空单无反手持仓
2、持有反手空单仓
3、持有多单无反手
4、持有反手多单
就4大类
1、IF持有空单无反手持仓
这个条件下分两类:a、IF正常平仓;b、IF止损平仓
2、IF持有反手空单仓
这个条件下只有一个选择:IF反手平仓条件。其它正常的开平仓信号忽略
以此类推
你好我有观点,请求哪位和我联系一下,帮我编个交易策略