關於轉折與穿越0線的警示如何寫

  •   25 
  • 最後發表   投資CC  20 小時前
投資CC 發文於   2025/11/11

如題目,想要寫買賣力的轉折與穿越零線,想知道該如何寫。謝謝。

附加文件

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

轉折可以用技術指標表示,例如均線開始下彎。穿越用cross over。

(1)20期均線下彎:

condition1=c<c[20];

(2)MACD的OSC穿越零軸:

var: difValue(0), macdValue(0), oscValue(0);

macd(12,26,9, difValue, macdValue, oscValue);

condition1=oscValue cross over 0;

  • 按讚來自於
  • hiex88
投資CC 發文於   2025/11/12

謝謝教授,請教範例是均線。
買賣力是柱狀圖也是一樣可以嗎?

虎科大許教授 發文於   2025/11/12

一樣可以,假設value1等於買賣力,則condition1=value1 cross over 0;

  • 按讚來自於
  • hiex88
投資CC 發文於   2025/11/13

if barfreq <> "Min" and barfreq <> "D" then 

raiseruntimeerror("僅支援分鐘與日頻率");

 

// ------------------------------

// 1. 計算K棒的買賣力道

// 買賣力道 = 累積買成交筆-累積賣成交比。

// 此數值為正,表示買盤較強;為負,表示賣盤較強。

 

value1 = GetField("累買成筆");

value2 = GetField("累賣成筆");

value3 = GetField("累買成筆") - GetField("累賣成筆");

 

// ------------------------------

// 2. 判斷是否穿越零軸並且發出警示

// 參考「內建.md」與「關鍵字.md」中的系統函數。

// _BuySellPower 向上穿越 0 (由負轉正)

if value3 cross over 0 then

   begin

      retmsg="金叉";

      ret=1;

   end;

   

if value3 cross under 0 then

   begin

      retmsg="死叉";

      ret=1;

   end;

 

請教如何正確設定警示雷達?標的是台指期貨(全)

投資CC 發文於   2025/11/13

請教教授,您舉的例子是用c收盤價均線來判斷轉折,但是我用買賣力,請教邏輯該如何改比較好?

 

value1 = GetField("累買成筆");

value2 = GetField("累賣成筆");

value3 = GetField("累買成筆") - GetField("累賣成筆");

 

投資CC 發文於   2025/11/13

if barfreq <> "Min" and barfreq <> "D" then 

raiseruntimeerror("僅支援分鐘與日頻率");

 

// ------------------------------

// 1. 計算K棒的買賣力道

// 買賣力道 = 累積買成交筆-累積賣成交比。

// 此數值為正,表示買盤較強;為負,表示賣盤較強。

 

value1 = GetField("累買成筆");

value2 = GetField("累賣成筆");

value3 = GetField("累買成筆") - GetField("累賣成筆");

   


// ------------------------------

// 2. 判斷是否出現轉折

// 轉折定義為一個三根K棒的極值結構。

 

// 判斷峰值轉折 (高點反轉)

// 條件1: 前一根K棒[1]的力道 > 前二根K棒[2]的力道 (前期上升)

// Condition 2: 前一根K棒[1]的力道 > 當前K棒[0]的力道 (當期下降)

condition1 = (value3[1] > value3[2]) and (value3[1] > value3);

 

// 判斷谷值轉折 (低點反轉)

// 條件1: 前一根K棒[1]的力道 < 前二根K棒[2]的力道 (前期下降)

// 條件2: 前一根K棒[1]的力道 < 當前K棒[0]的力道 (當期上升)

condition2 = (value3[1] < value3[2]) and (value3[1] < value3);

 

// 只要發生峰值或谷值轉折,_Reversal 條件即成立

condition3 = condition1 or condition2;

 

 

if condition3 then

   begin

      retmsg="轉折";

      ret=1;

   end;

   

if condition3 then

   begin

      retmsg="轉折";

      ret=1;

   end;

我自己問AI,關於轉折,AI說用3跟k棒寫,還請教授指導,感謝。

虎科大許教授 發文於   2025/11/13

若只是判斷買賣力由負轉正,程式可撰寫如下:

value1 = GetField("累買成筆");

value2 = GetField("累賣成筆");

value3 = GetField("累買成筆") - GetField("累賣成筆");

condition1 = value3 cross over 0;

若是要判斷峰值或谷值轉折,就比較複雜,峰值需要value3上漲一段,然後往下。至於上漲多大一段,可用過去幾期上漲多少百分比。你只使用三期判斷,可能會與預期的峰值轉折差異很大。當然,你也可以用連續幾期為正值且上升,但目前K棒的value3下降來判斷。

 

發表回覆
Close