Hi,小幫手:
如圖。 是一個警示策略。
情境是: 破前低 幅度不能太多 但又迅速站回, 破前低是指收盤價破20天K棒內的低點, 幅度不能太多:不超過當天的3%, 迅速站回是指之後3天內又高於前低。
可以給個範例嗎 ? 感謝
Hello ScottLee,
您可以使用 SwingLow 以及 SwingLowBar 來抓取轉折點,並運用此數值來運算。
附上策略雷達匯出檔供您參考。您可以調整裡面 SwingLow 以及 SwingLowBar 的參數來求出符合您需求的圖形。
Hi,小幫手:
不好意思,再說明一下我的情境,請看下圖, 我希望出現2B訊號時可以警示。 我根據您給的範例改寫後如下, 但在Print的時候卻Print 不出來"前低日期"和"前低價位", 麻煩幫我看一下Source Code有沒有符合我圖上的情境2B訊號出現時可以警示。
value1 = SwingLow(Low,20,5,5,2); // 前低價位:20根棒內的低點 value2 = SwingLowBar(low,20,5,5,2); //前低的位置 if value2 > 0 then begin value3 = LowestBar(low, value2); //破前低位置:value3 破前低價位: close[value3] condition1 = value3 <= 3; //破前低3天內又迅速站回 condition2 = low[value3] < value1; //破前低的最低點小於前低 condition3 = (value1 * 0.97) <= low[value3] ; //破前低最低價不超過前低3% condition4 = close > value1; // 2B大於前低 if condition1 and condition2 and condition3 and condition4 then ret = 1; print("前低日期:",date[value2],"前低:",value1); //前低日期 前低價位 print("破前低日期:",date[value3],"破前低:",low[value3]); print("2B日期:",date,"當天最低價",low); print("===================================="); end;
Hello ScottLee,
您可以修改 SwingLow 以及 SwingLowBar 的參數來抓出符合您需求的轉折點。
如何修改參數請參考連結內容
依照您上圖給的範例,您可以將腳本修改為為
value1 = SwingLow(Low,25,5,2,2);
value2 = SwingLowBar(low, 25, 5, 2, 2);
if value2 > 0 then begin
value3 = LowestBar(low, value2);
//print(date, date[value2], value1, low[value3], close);
condition1 = value3 <= 3; //轉折點後的幾日內最低點位於3日內
condition2 = low[value3] < value1; //轉折點後的幾日內最低點小於前轉折點
condition3 = (open[value3] * 0.97) <= low[value3]; //轉折點後的幾日內最低點大於當日開盤*0.97
condition4 = close >= value1; //今日收盤大於轉折點
if condition1 and condition2 and condition3 and condition4 then begin
ret = 1;
print("前低日期:",date[value2],"前低:",value1); //前低日期 前低價位
print("破前低日期:",date[value3],"破前低:",low[value3]);
print("2B日期:",date,"當天最低價",low);
print("====================================");
end;
end;
這樣即可在 6/15 抓出此點。
3 評論