在1分K線中 3根BAR內漲跌幅超過 2% 如何寫?

  •   340 
  • 最後發表   股市小貓咪  2025 二月 21
股市小貓咪 發文於   2025/02/19

由於需要合併其他條件選用1分K警示,K棒內單次觸發,逐筆洗價

條件

1.開盤第一根K棒開始算起,不會被前日K棒影響

2.計算1~3根K棒成交價最高最低如果大於當日漲跌幾%警示急拉或急殺。

3.希望可以分急拉或急殺分別警示

4.有沒有辦法當1~3根K棒符合急拉或急殺條件時,紀錄當時最高點或最低點成交價,當成交價再次超越時警示。

以下是我拼湊的程式但好像不能用希望能幫我看一下

var: _count(0);

 

if issessionfirstbar then _count = 1 else _count += 1;     

 

if date<>date[1] and _count >=1  then

 

        begin

IF GetField("close","D")*P1 < highest(High[0],3)-Lowest(Low[0],3) And GetField("close","D")*P2 > highest(High[0],3)-Lowest(Low[0],3) Then

  begin

retmsg="急拉0.5%";

ret=1;

end;

 

IF GetField("close","D")*P2 < highest(High[0],3)-Lowest(Low[0],3) And GetField("close","D")*P3 > highest(High[0],3)-Lowest(Low[0],3) Then

  begin

retmsg="急拉0.8%";

ret=1;

end;

 

IF GetField("close","D")*P3 < highest(High[0],3)-Lowest(Low[0],3) Then

  begin

retmsg="急拉2%";

ret=1;

end;

 

   end;

排序方式: 標準 | 最新
虎科大許教授 發文於   2025/02/19

你需要先定義急拉或急殺的基準是什麼。例如,從哪根K棒或哪個價位開始計算或是從哪個時間開始計算。

XS小編 發文於   2025/02/21

Hello 股市小貓咪,

 

1. 同您在腳本中的 _count 處理方式,只有 _count >= 3 的情況下才會觸發就可避開前日的K棒。

 

2. 需注意在當日的漲跌幅應該是用昨日的收盤價 (或是當日的參考價) 搭配今日的收盤價來計算。

另外急拉急跌應該是大於某值即可,而非位於兩個價格之間,因為您計算漲跌時是用最高價-最低價計算,故不會有負值。

 

3. 用retmsg處理即可。

 

4. 可以用變數紀錄條件符合時的價格,在換日或穿越價格觸發後歸0。

發表回覆
Close