請問小幫手與各位同學:
如何才能正確畫出
均線向上 畫紅線,均線向下畫綠線。
var:sm5(0);
sm5=average(C,5);
if sm5[1]>sm5 then plot1(sm5,"sm5 ");
if sm5[1]<sm5 then plot2(sm5,"sm5 ");
您的圖形的線段看起來是斷斷續續的原因,是因為當天的 SMA5 不上也不下 (相等的意思)。
所以,建議您:先畫一條「線條」當基底 (白色)
後面畫兩條「線段」當上升與下降,就可以了。
(注意線條、線段的堆疊順序)
var:sm5(0);
sm5=average(C,5);
plot1(1, sm5, "SM5");
if sm5[1]>sm5 then plot11(sm5,"sm5 ");
if sm5[1]<sm5 then plot12(sm5,"sm5 ");
白色就是當天的 sm5 = sm5[1] 持平
您可以上傳一下你的程式碼,及繪圖設定來看看
會有紅色均線與綠色均線之間不連續的問題,出在線段的限制,不一定與前後期均線數值相等有關。在本K棒開始繪製線段時,前一個線段會繪製到前一根,因此前一根於本根K棒之間不會有連線。
請問許教授有解方嗎?
謝謝許教授,祝新年快樂、恭喜發財。
看起來只能用欺騙系統的方式處理。我繪製了三條相同的均線,其中第一條為線條,會顯示整條均線,我們讓它顯示紅色,但在查價視窗分頁設定它不顯示。另外兩條為線段。第一條線段,我們設定它為其他顏色,樣式設定不顯示,但在查價視窗讓它顯示(選擇自動),第二條線段讓它顯示為綠色,且查價視窗設定不顯示。程式碼如下:
input: period(5, "期數");
value1 = average(C, period); //設定為線條
plot1(value1);
if value1>value1[1] then
begin
plot11(value1);
setPlotLabel(11, numtoStr(period, 0)+"期均線");
end;
if value1<value1[1] then
begin
plot12(value1);
setPlotLabel(12, numtoStr(period, 0)+"期均線");
end;



若只畫兩條均線,第一條用線條,顏色:紅色,查價視窗:不顯示,第二條用線段,只有在均線下彎畫綠色,自動。這樣也可以。
8 評論