買賣指令#

PowerLanguage 提供了 BuySellSellShortBuyToCover 買賣下單指令。買賣下單指令的語法由 動作 + 進出場名稱和口數 + 委託單類型 組成。

動作進出場名稱和口數委託單類型
Buy[("EntryLabel")] [TradeSize]OrderCommandType
Sell[("ExitLabel")] [From Entry("EntryLabel")] [TradeSize [Total]]OrderCommandType
SellShort[("EntryLabel")] [TradeSize]OrderCommandType
BuyToCover[("ExitLabel")] [From Entry("EntryLabel")] [TradeSize [Total]]OrderCommandType

委託單類型(OrderCommandType)#

委託單類型(OrderCommandType)決定下單的時間點和價格,共有 4 種:

委託單類型說明
This Bar On Close在當根K棒的最後一筆成交(tick)送出市價單,圖表箭頭顯示在當根K棒收盤價。On 是 skip word
Next Bar At Market在下一根K棒的第一筆成交(tick)送出市價單,圖表箭頭顯示在下一根K棒開盤價。MarketOpen 可以互換,即 Next Bar At OpenAt 是 skip word
Next Bar At <Price> Limit在下一根K棒送出限價 <Price> 的限價單,K棒結束時未成交則取消。圖表箭頭顯示在滿足限價條件的成交價位。At 是 skip word
Next Bar At <Price> Stop在下一根K棒送出停損價 <Price> 的停損單,K棒結束時未成交則取消。圖表箭頭顯示在滿足停損條件的成交價位。At 是 skip word

實務上不建議使用 This Bar On Close,因為可能造成即時交易與回測的買賣訊號不一致。MultiCharts 在即時行情中,需要收到下一根K棒的第一筆成交,才能判斷上一根K棒已經完成; 而回測時因為有歷史資料,可以事先知道K棒的最後一筆成交,不需要等待下一根K棒。詳見已經完成的K棒

Buy 指令#

Buy 指令下單買進。如果買進委託單成交時有空單倉位,會將空單倉位平倉。

語法#

1
Buy [("EntryLabel")] [TradeSize] OrderCommandType;
語法元素說明
EntryLabel命名進場名稱,顯示在圖表上。可省略,預設名稱依序為 "Buy""Buy#2""Buy#3"。賣出(Sell)時可用此名稱指定要賣出的進場
TradeSize下單的股數(口數),後面接 Share/Shares/Contract/Contracts。可省略,預設使用 設定 -> 策略屬性 -> 屬性 -> 固定委託股數(口數) 的值
OrderCommandType指定下單類型、時間和價格,見委託單類型

範例#

在下一根K棒,市價單買進 1 口,命名進場名稱為 "Entry"

1
Buy("Entry") 1 Contract Next Bar Market;

在下一根K棒,限價 100 的限價單買進 2 股。

1
Buy 2 Shares Next Bar At 100 Limit;

在下一根K棒,停損價 50 的停損單買進 10 口。

1
Buy 10 Contracts Next Bar 50 Stop;

Sell 指令#

Sell 指令賣出多單倉位。

語法#

1
Sell [("ExitLabel")] [From Entry("EntryLabel")] [TradeSize [Total]] OrderCommandType;
語法元素說明
ExitLabel命名出場名稱,顯示在圖表上。可省略,預設名稱依序為 "Sell""Sell#2""Sell#3"
EntryLabel指定要賣出的進場名稱。From 是 skip word,可以省略。可省略,預設為全部進場部位
TradeSize指定每一筆多單進場部位都賣出 TradeSize 股數(口數),後面接 Share/Shares/Contract/Contracts。如果後面接 Total,根據先進先出(FIFO)原則,先進場的多單先賣出,總共賣出 TradeSize 股數(口數)。可省略,預設賣出全部股數(口數)
OrderCommandType指定下單類型、時間和價格,見委託單類型

範例#

在下一根K棒,從進場名稱為 "Original Entry" 的進場部位,市價單賣出 10 股。

1
Sell Entry("Original Entry") 10 Shares Next Bar At Market;

在下一根K棒,從每一個進場部位,都以市價單賣出 5 口。

1
Sell 5 Contracts Next Bar Market;

在下一根K棒,從全部進場部位,以限價 100 的限價單總共賣出 1 股。

1
Sell 1 Share Total Next Bar At 100 Limit;

在下一根K棒,以停損價 50 的停損單賣出全部股數(口數),等同全部平倉。

1
Sell Next Bar 50 Stop;

SellShort 指令#

SellShort 指令下單賣空。如果賣空委託單成交時有多單倉位,會將多單倉位平倉。

SellShort 也可以寫成 Sell Short(中間加空格)。

語法#

1
SellShort [("EntryLabel")] [TradeSize] OrderCommandType;
語法元素說明
EntryLabel命名進場名稱,顯示在圖表上。可省略,預設名稱依序為 "Short""Short#2""Short#3"。買進回補(BuyToCover)時可用此名稱指定要回補的進場
TradeSize下單的股數(口數),後面接 Share/Shares/Contract/Contracts。可省略,預設使用 設定 -> 策略屬性 -> 屬性 -> 固定委託股數(口數) 的值
OrderCommandType指定下單類型、時間和價格,見委託單類型

範例#

在下一根K棒,市價單賣空 1 口,命名進場名稱為 "Entry"

1
SellShort("Entry") 1 Contract Next Bar Market;

在下一根K棒,限價 100 的限價單賣空 2 股。

1
SellShort 2 Shares Next Bar At 100 Limit;

在下一根K棒,停損價 50 的停損單賣空 10 口。

1
SellShort 10 Contracts Next Bar 50 Stop;

BuyToCover 指令#

BuyToCover 指令買進回補空單倉位。

BuyToCover 也可以寫成 Buy To Cover(中間加空格)。

語法#

1
BuyToCover [("ExitLabel")] [From Entry("EntryLabel")] [TradeSize [Total]] OrderCommandType;
語法元素說明
ExitLabel命名出場名稱,顯示在圖表上。可省略,預設名稱依序為 "Cover""Cover#2""Cover#3"
EntryLabel指定要買進回補的賣空名稱。From 是 skip word,可以省略。可省略,預設為全部進場部位
TradeSize指定每一筆空單進場部位都買進回補 TradeSize 股數(口數),後面接 Share/Shares/Contract/Contracts。如果後面接 Total,根據先進先出(FIFO)原則,先進場的空單先回補,總共買進回補 TradeSize 股數(口數)。可省略,預設買進回補全部股數(口數)
OrderCommandType指定下單類型、時間和價格,見委託單類型

範例#

在下一根K棒,從進場名稱為 "Original Entry" 的進場部位,市價單買進回補 10 股。

1
BuyToCover Entry("Original Entry") 10 Shares Next Bar At Market;

在下一根K棒,從每一個進場部位,都以市價單買進回補 5 口。

1
BuyToCover 5 Contracts Next Bar Market;

在下一根K棒,從全部進場部位,以限價 100 的限價單總共買進回補 1 股。

1
BuyToCover 1 Share Total Next Bar At 100 Limit;

在下一根K棒,以停損價 50 的停損單買進回補全部股數(口數),等同全部平倉。

1
BuyToCover Next Bar 50 Stop;

Reference#

https://www.multicharts.com/trading-software/index.php?title=Category:Strategy_Orders

https://www.multicharts.com/trading-software/index.php?title=Buy

https://www.multicharts.com/trading-software/index.php?title=Sell

https://www.multicharts.com/trading-software/index.php?title=SellShort

https://www.multicharts.com/trading-software/index.php?title=BuyToCover

© 2026 CodeReindeer. All rights reserved.