1.每個個股有其股性,同一個指標參數很難適用所有股票,可針對股性設定個別參數
2.庫存股中,可能每個商品的數量都不相同,可依據個股數量,設定其部位進行交易
3.以下程式碼允許買或賣各一張,類似安控 最大部位限制
input:
T1N("2359.tw","代碼1"),T1R(4),T1H(5),T1L(5),T1P(0,"Position-1"),T1F(0,"Filled-1"),
T2N("2393.tw","代碼2"),T2R(5),T2H(5),T2L(5),T2P(0,"Position-2"),T2F(0,"Filled-2"),
T3N("8096.tw","代碼3"),T3R(5),T3H(5),T3L(5),T3P(0,"Position-3"),T3F(0,"Filled-3");
switch (symbol)
begin
case T1N:
value3=addSpread(close[1]+atr(T1R)/T1H,0);//調整適合商品的數值
value4=addSpread(close[1]-atr(T1R)/T1L,0);//調整適合商品的數值
if getField("收盤價", "Tick") <= value4
then setposition(minlist(Position+1,T1P+1),getField("收盤價", "Tick"),Label:="買C1-ATR5/5"); //T1P+1限制庫存僅可增加一張
if getField("收盤價", "Tick") >= value3
then setposition(maxList(Position-1,T1P-1),getField("收盤價", "Tick"),Label:="賣C1+ATR5/5"); //T1P-1限制庫存僅可減少一張
case T2N:
value3=addSpread(close[1]+atr(T2R)/T2H,0);//調整適合商品的數值
value4=addSpread(close[1]-atr(T2R)/T2L,0);//調整適合商品的數值
if getField("收盤價", "Tick") <= value4
then setposition(minlist(Position+1,T2P+1),getField("收盤價", "Tick"),Label:="買C1-ATR5/5");
if getField("收盤價", "Tick") >= value3
then setposition(maxList(Position-1,T2P-1),getField("收盤價", "Tick"),Label:="賣C1+ATR5/5");
case T3N:
value3=addSpread(close[1]+atr(T3R)/T3H,0);//調整適合商品的數值
value4=addSpread(close[1]-atr(T3R)/T3L,0);//調整適合商品的數值
if getField("收盤價", "Tick") <= value4
then setposition(minlist(Position+1,T3P+1),getField("收盤價", "Tick"),Label:="買C1-ATR5/5");
if getField("收盤價", "Tick") >= value3
then setposition(maxList(Position-1,T3P-1),getField("收盤價", "Tick"),Label:="賣C1+ATR5/5");
end;