請問自動交易語法中,條件成立要下單可以如下語法鋪價下單4筆各1張嗎? 
實際執行只有第一筆下單有效,後面3筆委託單都不會出現,是甚麼問題呢?
if Condition1 then
Begin
SetPosition(1, Close);
SetPosition(2, AddSpread(Close, -1));
SetPosition(3, AddSpread(Close, -2));
SetPosition(4, AddSpread(Close, -3));
End;
        
        請問自動交易語法中,條件成立要下單可以如下語法鋪價下單4筆各1張嗎? 
實際執行只有第一筆下單有效,後面3筆委託單都不會出現,是甚麼問題呢?
if Condition1 then
Begin
SetPosition(1, Close);
SetPosition(2, AddSpread(Close, -1));
SetPosition(3, AddSpread(Close, -2));
SetPosition(4, AddSpread(Close, -3));
End;
SetPosition(1, Close);
SetPosition(2, AddSpread(Close, -1));
SetPosition(3, AddSpread(Close, -2));
SetPosition(4, AddSpread(Close, -3));
開四個自動交易,價位不同試試。
Hello jo,
您可以用啟動4個相同邏輯的交易策略,每個下出不同的委託價來達到鋪價的效果。
但須注意策略啟動後的部位庫存彼此都是獨立的,所以您上面的寫法會一共下出10張委託。
若是各個價格都只要一張委託的話,個別策略的交易指令應為:
策略A SetPosition(1, Close);
策略B SetPosition(1, AddSpread(Close, -1));
策略C SetPosition(1, AddSpread(Close, -2));
策略D SetPosition(1, AddSpread(Close, -3));
交易邏輯只會針對該策略嗎?
如果策略A跟B都有買進,賣出時策略B會賣到策略A的嗎?
Hello 阿杜,
策略只會依據策略自己的庫存作交易,所以假設策略A策略B的庫存都為1 (實際庫存2)時,策略B執行 setposition(0) 的話就只會賣出1張。
但須注意的是,如果策略B是 setposition(-1) 的話,那麼就會把兩張庫存都賣掉 (實際庫存0,策略A庫存1,策略B庫存-1)。
5 評論