XS網格交易2.0.6版 – 預掛版

  • XS網格交易2.0.6版 – 預掛版

    Posted by 查理哥 on 2025/12/03 at 16:11

    ** 已經下載的朋友,請注意頻率要改為日頻,才能正常運作

    之前寫的XS網格程式碼,都是觸價後下,讓幾點下單,或直接下市價單,

    根據自己這幾個月下單的經驗,

    如果下市價單如遇到快市時,滑價很有可能大到10點,

    如果下限價單,又有可能不成交,

    為解決這個問題,重新寫了一版

    當價格往上,快接近賣價的時候,就先下限價賣單等待

    如果沒碰到就反轉向下,快接近買價的時候,就下限價買單,並取消原本的賣單

    比如說,剛剛成交在28000,網距100,接下來網格向上賣價是28100,向下買價是27900

    當價格往上超過28050,就下一筆限價28100的賣單

    如果都沒有賣出,就反轉向下

    當價格往下低過27950,就下一筆限價27900的買單

    等有一邊成交了,才重新計算接下來網格要買賣的價格

    採用這樣方式就能實現類似網格都先預掛的方式了

    相關設定請參考圖片,請一定要先用模擬單測試,並且先手動下幾張或幾口,再啟動策略

    不保證程式碼與設定的正確性,請務必自行測試沒問題後再實單

    查理哥 回覆 1 week, 1 天 之前 7 會員 · 21 則回應
  • 21 則回應
  • Cathy Huang

    會員
    2025/12/03 at 17:10

    感謝查理哥。

    上次去聽了查理哥的講座,對網格有較深一點的了解,回來有試過手單網格,發現用閃電MIT會滑價的滿嚴重的,就改成快接近價格時掛限價單,就好多了。

    感謝查理哥釋出這樣的程式碼,可以來嘗試自動跑,感謝查理哥。

    • 查理哥

      社團管理員
      2025/12/03 at 18:07

      不要用MIT單

      先掛好要買或要賣的價位,可以先把上下幾個價位都掛好,之後就很輕鬆了

  • RS168

    會員
    2025/12/03 at 17:36

    謝查理哥

    找機會來試試^^

    • 查理哥

      社團管理員
      2025/12/03 at 18:11

      只要控制好風險,網格真的是不錯用的

  • Alan0728

    會員
    2025/12/04 at 02:08

    我已設好進場起始價,但到價後沒動作,我用2.0.4版測試,是有動作的?

    • 查理哥

      社團管理員
      2025/12/04 at 10:29

      發現問題了,週期請改為日頻,就會正常了

  • 查理哥

    社團管理員
    2025/12/04 at 14:12

    之前上傳的版本,有個設定有問題,需要把頻率改為日頻,不然不會進場,請自己調整或是重新下載匯入

  • 麥叔

    會員
    2026/02/03 at 22:33

    請問查理哥,程式一開始,就會根據市價先多5口嗎?

  • 麥叔

    會員
    2026/02/04 at 09:21

    抱歉,上一篇寫錯了。是一開盤,就會買入initial_position這個數量? 請問為什麼啊?

    initial_position=(P_uplimit-P_initial)/grid_gap;

    • A+管理員

      社團管理員
      2026/02/04 at 14:12

      這個會根據你的進場起始價,跟最高價計算要往上賣需要的口數

      這個程式只要價格低於進場起始價,就會啟動,如果你的價格比進場起始價低好幾格,會先買進上面起始進場價的數量,然後根據現在價格計算,如要賣到網格上緣,需要多少數量,如有差,就會再買

  • 麥叔

    會員
    2026/02/04 at 18:45

    查理哥,我今天早上9:30開是跑模擬單,起始價是32300,最高價是32440,最低價是31740,網格20。盤中最高的時候超過32440,後來回跌,但是並不會從最高價往下35點就補一口,而是到32300才一口氣補差額,行為是這樣嗎? 為什麼要設計成這樣? 謝謝回答

    • 查理哥

      社團管理員
      2026/02/04 at 21:34

      網格策略賣完了等於這次的網格結束了

      需要重新設定

      如果你希望繼續,可以回跌35點就買進一口

      這樣程式偵測到部位

      就會開始自動交易了

      意思就是只要在沒有部位的情況下,只要你手單先進場買

      程式就會當作這個網格已經開始運作了,不用等到初始進場價

      您再試試

  • Livan

    會員
    2026/02/27 at 11:27

    請問張數的設定P_GridV好像沒在程式碼內用到,好像都會固定1口

    • 查理哥

      社團管理員
      2026/02/27 at 13:32

      好像是,可以自己試著改下程式碼~~

  • 麥叔

    會員
    2026/03/03 at 16:50

    查理哥,如果程式開始執行,目前價格高於起始價,那麼程式就不會先買起始價與最高價相差的口數。如果價格一直跌不下來,那網格就等於沒有動作。所以設定的時候,現價最好小於起始價,這樣的設定與理解對嗎?

    • 查理哥

      社團管理員
      2026/03/03 at 22:46

      是的

      不過我有在想要改程式碼,只要價格落在上下區間就會一直交易

      這樣應該會更方便使用

      • 麥叔

        會員
        2026/03/04 at 11:31

        查理哥,謝謝您的回答,我是想了解您的想法。您的程式,我已經改成只有上下區間而已,這樣真的比較好用。

        • 查理哥

          社團管理員
          2026/03/04 at 11:47

          讚喔,我提供的就是基礎版,能調整成適合自己用的最重要

          我的想法也是一直在變的~~

        • 麥叔

          會員
          2026/03/04 at 14:30

          謝謝查理哥無私地分享,對於程式我有「偷吃步」的作法與您分享。因為我的筆電比較破舊、算力不強,所以我盡量依已知的規則來簡化程式,減少乘法與除法,因為乘除法比較吃CPU,所以需要運算的,我儘量在程式開始,用ONCE計算一次就好。

          once grid_gap=(P_Uplimit-P_Dnlimit)/P_grid; //網格間距

          once dir_gap=grid_gap/2; //往上或往下的距離

          此外,我把您的程式,block_cen的對應點數放進去,加上block_no來表示即時位置編號,如下:

          var: intrabarpersist block_no(0); //即時位置編號

          var: intrabarpersist block_cen(0); //即時位置編號對應的點數

          var: intrabarpersist block_up(0); //即時位置編號對應的上區塊邊界點數

          var: intrabarpersist block_dn(0); //即時位置編號對應的下區塊邊界點數

          因為我把您的程式改成天地2條線而已,所以這四個值在程式一開始就計算好了,下面的就依這個已經算好的參數來計算上1格、下一個。因為已經知道網格網上就是往上一格,所以「偷吃步」,把您的上一格運算簡化,沒有原先的通用、漂亮,但是可以讓程式跑快一點點。反方向往下一格也是這樣偷吃步

          block_no=block_no+1;

          block_cen= block_cen+grid_gap; //即時位置編號對應的點數

          block_up = block_cen+grid_gap; //上面區塊的上邊界

          block_dn = block_cen-grid_gap; //下面區塊的下邊界

          我這樣搞的目的,讓程式跑快一點,減少掉TICK的風險,老電腦也可以跑順一點。

          回饋給您參考。

        • 麥叔

          會員
          2026/03/04 at 14:39

          補充一下,計算預掛的方式<div>close>=(block_up+block_dn)/2+(block_up-block_dn)/4</div>

          也被我偷吃步改成

          close>=(block_cen+dir_gap)

        • 查理哥

          社團管理員
          2026/03/04 at 15:41

          感謝您的分享喔

          我也覺得之前寫的有點複雜~~😅😅

Log in to reply.