逐筆洗價

  •   412 
  • 最後發表   桂桂  2023 十月 04
桂桂 發文於   2023/09/13

小幫手  我寫了一個腳本自動交易選逐筆洗價讓出場可以即時判斷

但進場條件想要K棒收完再判斷,請問再分K,該怎麼修改?

if CLOSE > average(C,length2) [1]

這樣的想法對嗎..?  

 

///////進場條件(多方)//////

if CLOSE > average(C,length2) AND getSymbolField("tse.tw", "收盤價", "D")

                   //分K均線//

>average(getSymbolField("tse.tw", "收盤價", "D"),length) 

AND value60 crosses over value70 and  position = 0 and filled = 0  then  setposition(2, market);

if value60 crosses below value70 and  position = 2 and filled = 2  then  setposition(0, market);

//////////出場/////

input: profit_point(1000, "停利(點)");//空方

input: loss_point(100, "停損(點)");//空方

 

if Position = -2 and Filled = -2 then begin

{ 依照成本價格設定停損/停利: 請注意當作空時, 判斷是否獲利的方向要改變 }

 

if profit_point > 0 and Close <= FilledAvgPrice - profit_point then begin

{ 停利 }

SetPosition(0);

end else if loss_point > 0 and Close >= FilledAvgPrice + loss_point then begin

{ 停損 }

SetPosition(0);

end;

end;

 

排序方式: 標準 | 最新
XQ小幫手 發文於   2023/09/20

 Hello 桂桂,

 

小幫手認為您的想法方向是對的 (抓上一根Bar運行的結果),但 CLOSE > average(C,length2) [1] 這種寫法不太正確。

您可以用上一根Bar的資料來判斷:

condition1 = close[1] > average(close[1], length2);

或是取上一根Bar的判斷結果:

condition1 = close > average(close, length2);

if condition1[1] then...

桂桂 發文於   2023/09/21

小幫手  好像不太對

我希望的是短均線向上交叉長均線以及站在短均線之上 單跟K棒收完確認後下一隻進場

但依造我想的那樣修改

他變成會在出現訊號時判斷上一根分K是否在均線之上就進場,但有可能我出現訊號這分K未能站上均線

目前只要關閉逐筆洗價功能就可以

但這樣變成出場會延遲

桂桂 發文於   2023/09/22

第2個問題請小幫手看一下副圖

我設定的參數/大盤指標及疊圖及自動交易的回測都沒問題

但實際自動交易執行後卻買賣異常如下圖

只有賣出(空)時間正常,出場買進時間應該要跟大盤指標及回測一樣,不懂為什麼他出在那個時間點

出場完又馬上進場(空){當天回測及大盤指標都是指進場一次}

我的參數全部都用一樣,小幫手可以幫我看一下是我腳本衝突嗎?

因為回測及指標都正常,腳板參數也都一樣

小幫手可以幫我看一下那裡衝突嗎

if  CLOSE < average(C,length1)//空方 

AND getSymbolField("tse.tw", "收盤價", "D")<average(getSymbolField("tse.tw", "收盤價", "D"),length)//空方

AND value6 crosses over value7 and  position = 0 and filled = 0  then  setposition(-2, market);//空方

if value6 crosses below value7 and  position = -2 and filled = -2  then  setposition(0, market)//空方

 else if time > 132500 and position = -2 and filled = -2  then  setposition(0, market);

附加文件

  • 按讚來自於
  • pond8710289
阿寶1998 發文於   2023/09/23

我也碰到一樣的問題,我的觀察是,開了逐筆洗價會變成判斷進場的那隻K棒,在還沒收盤(站穩)的時候只要有經過就會進場,就是close會失效,close會變成像high或low判斷,原理好像是用幾秒幾分的K來進出場

 

桂桂 發文於   2023/09/25

我是沒打開逐筆洗價的當下發生的...

XQ小幫手 發文於   2023/10/04

Hello 桂桂,

 

他變成會在出現訊號時判斷上一根分K是否在均線之上就進場,但有可能我出現訊號這分K未能站上均線

=> 是的,但這根Bar是否在均線上無法改變上根Bar符合條件的事實。

如果照您原本的寫法,且腳本是在上根Bar收K時運算,也還是會進場,因為腳本並不會知道未來價格又會回到均線下。

若您希望當根Bar也要滿足,那麼就多加上條件即可。

 

至於出場的部分,小幫手建議您可以將相關數值 (ex. value6 和 value7 及其前期值) 印出確認。

由於您沒有提供完整的腳本和使用情境,所以小幫手無法得知是什麼原因造成。

如果還是有問題的話,麻煩提供 自動交易中心匯出檔勾選(包含)交易腳本,問題發生的日期以及 XQ Log。

Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。

您可以直接將檔案上傳,如果檔案過大的話也可以保存到雲端後將連結Mail至客服信箱 XQservice@XQ.com.tw 且務必附上 討論文章連結網址(小幫手才能盡早處理)。

感謝。

發表回覆
Close