XS下單價格取得

  •   79 
  • 最後發表   GaryChiang  2021 十二月 27
GaryChiang 發文於   2021/12/20

請問, 用 setposition 下單之後, 能知道上筆單下單的價格嗎?

因為有, 停損, 停利, 時間..等很多下單的條件, 若無法知道上一筆下單的價格, 在做刪改單時很困擾!

可以參考 Multicharts , 他的下單可以有一個"label" 之後, 我可以知道是那個條件下單!

謝謝!

排序方式: 標準 | 最新
XQ小幫手 發文於   2021/12/22

Hello GaryChiang,

 

您可以參考交易函數裡的 FilledRecordCountFilledRecordPrice

FilledRecordPrice(FilledRecordCount) 就會是最新一筆的成交價。

FilledRecordPrice(FilledRecordCount-1) 就會是前一筆的成交價。

另外如果沒有分批進場的話 FilledAvgPrice 也可以取得進場價格。

SetPosition 裡有 label 參數,可以讓執行紀律理的交易訊息顯示指令標記。

GaryChiang 發文於   2021/12/23

謝謝小幫手的回答,

但我可能沒說清楚, 

我想知道 上一筆"送單", 但"未成交"的單是那一個條件送出的.

例如我有二個出場條件, 我知道已經有預掛了, 因為 position=0, 但是那一個條件送出去的呢?

 

XQ小幫手 發文於   2021/12/27

Hello GaryChiang,

 

沒有內建的函數可以達到您的需求,但您可以考慮使用變數來記錄相關資訊。

舉例來說:

condition1 = 條件1;

condition2 = 條件2;

 

if condition1 then begin

    setposition(1, close);

    value1 = close;    //條件1下單的價格

    value2 = 0;

    end;

 

if condition2 then begin

    setposition(1, close);

    value1 = 0;

    value2 = close;    //條件2下單的價格

    end;

 

if position = filled then begin    //若沒有未成交委託的話兩者都為0

    value1 = 0;

    value2 = 0;

    end;

這樣的話當有未成交委託時,value1有數值就代表其委託價以及是由condition1觸發,value2亦然。

發表回覆
Close