Buy -  (內建函數) 交易函數
語法:
把策略的多單部位變大,進行多單加碼的動作。
Buy(多單加碼數量)
Buy(多單加碼數量,委託價格)
Buy(多單加碼數量,label:="指令標記")
Buy(多單加碼數量,委託價格,label:="指令標記")
說明:

Buy函數的作用是把目前多單的部位變大,用來進行多單加碼的動作。

Buy函數的第一個參數是加碼部位,必須是一個正整數。第二個參數是此次交易的委託價格,第二個參數如果不傳的話則會使用策略的預設買進價格。

與SetPosition一樣,也可以透過label函數傳入指令標記。

範例

Buy(1);
Buy(1, Close);
Buy(1, MARKET);
Buy(1, label:="買進1張");

注意事項

當目前的Position < 0時,執行Buy指令時會先把空頭部位全部平倉(部位變成0),之後再進行加碼的動作。

Buy(0)是一個特殊用法,如果此時的部位小於0的話,Buy(0)的作用是把部位變成0,如果此時的部位大於0的話,則Buy(0)沒有任何作用。

以下是Buy(N)的執行邏輯:

if Position < 0 then
    SetPosition(N)    { 從Position(負數)變成N(正數) }
else
    SetPosition(Position + N);  { 從Position(零或是正數)變成Position+N }