以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp)
-- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4)
---- 这种通道线要怎么编写? (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=187994)
|
-- 作者:300qh
-- 发布时间:2021/4/22 20:51:37
-- 这种通道线要怎么编写?
如下图:当收盘价格突破上线后,画只上升的下线,上线取原值不变动, 直到收盘价格跌破下线后,画只下降的上线,下线取原值不变动。 可以依以下指标基础,要怎么把上线和下线如图那种不倒退的趋势线? input:m(10,1,100,1),n(3,1,100,1); MID := MA(CLOSE,M); UPPER: MID + N*STD(CLOSE,M); LOWER: MID - N*STD(CLOSE,M); 此主题相关图片如下:qq截图20210422205002.png
[此贴子已经被作者于2021/4/22 20:52:40编辑过]
|
-- 作者:FireScript
-- 发布时间:2021/4/23 8:35:15
--
http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=187870 这个帖子不是回复过了吗?是还有什么问题吗?
|
-- 作者:300qh
-- 发布时间:2021/4/23 10:53:30
--
还是写不出来,想看看谁还能写一下。
|
-- 作者:300qh
-- 发布时间:2021/4/23 11:00:07
--
这个写法图表上看起来比较方便,思路很简单,写起来我却不会。还请您再研究一下。
|
-- 作者:FireScript
-- 发布时间:2021/4/23 11:02:08
--
input:m(10,1,100,1),n(3,1,100,1); VARIABLE:mark:=0; MID := MA(CLOSE,M); UPPER:=MID + N*STD(CLOSE,M); LOWER:=MID - N*STD(CLOSE,M);
VARIABLE:x1:=0,x2:=0; if BARPOS=M then //M个K之后上下轨才正常有值。 begin x1:=UPPER; x2:=LOWER; end
if cross(h,UPPER) then mark:=1; if cross(LOWER,l) then mark:=-1;
if UPPER<x1 and (mark=0 or mark=-1) then x1:=UPPER; if LOWER>x2 and (mark=0 or mark=-1) then x2:=LOWER; if mark=1 then x1:=UPPER; if mark=-1 then x2:=LOWER;
DRAWICON(cross(h,UPPER),h,1); DRAWICON(cross(LOWER,l),l,2);
showUPPER:x1;
showLOWER:x2;
这段代码不行吗?只能写到这种程度了。
|
-- 作者:300qh
-- 发布时间:2021/4/23 12:13:10
--
你有加载到图表上看过吗?我加载上去是这样的,感觉还是哪里不对呢? 此主题相关图片如下:qq截图20210423121241.png
|
-- 作者:300qh
-- 发布时间:2021/4/23 12:26:01
--
收盘价突破应该不会同根K线发生吧,要么就是突破上轨,要么就是跌破下轨,当突破上轨的K线开始数N天,那么画N天的下轨最高值。上轨取原始上轨值,直到收盘价格跌破上升的下轨线,那么画N天的上轨最低值,下轨取原始下轨值。看起来非常简单的原理。要怎么用全局变量啊?突破N:=BARSLAST(cross(c,上轨))+1; 跌破M:=BARSLAST(cross(下轨,c))+1;
上轨:=LLV(UPPER,跌破M); 下轨:=HHV(LOWER,突破N);
|