請問選股 MACD 零軸上寫法?

  •   2.2K 
  • 最後發表   Paddy  2016 十二月 05
Paddy 發文於   2016/09/06

 

分兩部分。如下

1.我想設定選股 MACD的OSC在綠柱體轉紅柱體的第一根如上圖,請問這要怎麼設定?

 

2.MACD指標的 DIF線、MACD線這兩條線要在零軸之上,這要怎麼寫?(如上圖)

 

再麻煩高手們,謝謝

排序方式: 標準 | 最新
Jack 發文於   2016/09/06

Paddy 您好,

 

您的第一個問題與第二個問題,

應該都需要使用XS撰寫,

 

您可以參考看看 Jack 提供的程式碼範例,若有問題,歡迎詢問,謝謝。

 

1. MACD的OSC在綠柱體轉紅柱體的第一根

input: FastLength(12), SlowLength(26), MACDLength(9);
variable: difValue(0), macdValue(0), oscValue(0);

SetTotalBar((maxlist(FastLength,SlowLength,6) + MACDLength) * 4);

SetInputName(1, "DIF短期期數");
SetInputName(2, "DIF長期期數");
SetInputName(3, "MACD期數");

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if oscValue[1] < 0 and oscValue > 0 then ret = 1;

 

2. MACD指標的 DIF線、MACD線這兩條線要在零軸之上

input: FastLength(12), SlowLength(26), MACDLength(9);
variable: difValue(0), macdValue(0), oscValue(0);

SetTotalBar((maxlist(FastLength,SlowLength,6) + MACDLength) * 4);

SetInputName(1, "DIF短期期數");
SetInputName(2, "DIF長期期數");
SetInputName(3, "MACD期數");

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if difValue > 0 and macdValue > 0 then ret = 1;

 

以上,提供給您參考。

 

 

 

Paddy 發文於   2016/09/07

謝謝 JACK 大的分享,讓我受用無窮,謝謝。

  • 按讚來自於
  • jacklee
藍靖 發文於   2016/12/04

請問 問題同上,反方向的寫法,osc綠柱體第一根and macd,dif 0軸以下之寫法~請大大指教~謝謝你

Jack 發文於   2016/12/05

藍靖,

謝謝發問,你的問題,只要將最後一段程式碼,大小於對調即可,

 

1. MACD的OSC在紅柱體轉綠柱體的第一根

input: FastLength(12), SlowLength(26), MACDLength(9);
variable: difValue(0), macdValue(0), oscValue(0);

SetTotalBar((maxlist(FastLength,SlowLength,6) + MACDLength) * 4);

SetInputName(1, "DIF短期期數");
SetInputName(2, "DIF長期期數");
SetInputName(3, "MACD期數");

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if oscValue[1] > 0 and oscValue < 0 then ret = 1;

 

2. MACD指標的 DIF線、MACD線這兩條線要在零軸之下

input: FastLength(12), SlowLength(26), MACDLength(9);
variable: difValue(0), macdValue(0), oscValue(0);

SetTotalBar((maxlist(FastLength,SlowLength,6) + MACDLength) * 4);

SetInputName(1, "DIF短期期數");
SetInputName(2, "DIF長期期數");
SetInputName(3, "MACD期數");

MACD(weightedclose(), FastLength, SlowLength, MACDLength, difValue, macdValue, oscValue);

if difValue < 0 and macdValue < 0 then ret = 1;

 

再請你試試看,有問題歡迎詢問,謝謝。

 

發表回覆
Close