Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

King Keltner (Raschke) Channel Breakout, kumpirmado ng slope, long-short, exit sa muling pagtawid sa midline, muling inilatag sa orasan na 4H (ETHUSDT.BYBIT 4H, purong OHLCV, mga default ng may-akda na 20/50)

Resulta: Inabandona

EthBybitKingKeltnerBreakout4H

Buod ng Resulta

Muling inilatag ng EthBybitKingKeltnerBreakout4H ang breakout ng King Keltner na FMZ (midline na EMA na kinukumpirma ng slope, may mga band na ATR, long at short, at exit sa muling pagtawid sa midline) sa ETHUSDT.BYBIT 4H. Pinili ang pagitan na 4H matapos ipakita ng paunang pag-aaral na hindi nito masaklaw ang bayarin ang bersyong 1H. Hindi kailanman pumasa ang code sa sandbox verification ng Layer 3: paulit-ulit na lumampas ang smoke test sa limitasyong 300s sa ~20,000-bar na saklaw. Matapos ang 3 iteration, kabilang ang muling pagsulat sa ATR bilang rolling sum na O(1), iniwan ang run bago masuri ang backtest, optimization, analysis o risk review, kaya hindi nasukat sa loob ng factory ang edge.

Hypothesis

Pinagmulan: 发明者量化-小小梦, 'Keltner Channel upgrade: King Keltner strategy', digest ng FMZ (https://www.fmz.com/digest-topic/4104), mga seksiyong '升级版的金肯特纳' at '金肯特纳策略My语言'). Pagkilala sa may-akda. Muling inilatag ang mekanismo mula sa mga pangunahing prinsipyo, hindi tapat na ini-port (L167). Channel: karaniwang presyo TP=(H+L+C)/3. Midline = EMA(TP, 20), bersyon ni Raschke na EMA mula sa teksto ng artikulo; gumagamit naman ang My-language code ng artikulo ng SMA. Lapad ng band = SMA(TrueRange, 50), na ginagamit……Magpakita ng higit paMagpakita ng mas kaunti

Pinagmulan: 发明者量化-小小梦, 'Keltner Channel upgrade: King Keltner strategy', digest ng FMZ (https://www.fmz.com/digest-topic/4104), mga seksiyong '升级版的金肯特纳' at '金肯特纳策略My语言'). Pagkilala sa may-akda. Muling inilatag ang mekanismo mula sa mga pangunahing prinsipyo, hindi tapat na ini-port (L167). Channel: karaniwang presyo TP=(H+L+C)/3. Midline = EMA(TP, 20), bersyon ni Raschke na EMA mula sa teksto ng artikulo; gumagamit naman ang My-language code ng artikulo ng SMA. Lapad ng band = SMA(TrueRange, 50), na ginagamit kasama ang multiplier na 1.0x gaya sa artikulo. Itaas = mid + ATR50, ibaba = mid - ATR50. Mga tuntunin sa direksiyon: long kapag tumataas ang midline at nasa itaas ng upper band ang close; short kapag bumababa ang midline at nasa ibaba ng lower band ang close. Lumalabas ang long kapag nag-close sa ibaba ng midline, at ang short kapag nag-close sa itaas nito. Walang ibang gate, filter o karagdagang feed (L130). ONE ADAPTATION: nagbago ang pagitan ng mga bar mula 1H sa artikulo tungo sa 4H, dahil ipinakita ng sarili kong paunang pag-aaral sa BYBIT 1H (7 alts/majors, 2021-2026, 0.11% RT) na nalulugi sa bayarin ang bersyong 1H sa bawat pangalan. Mula -0.14% hanggang 0.00% ang net kada trade, na may PF 0.82-1.00 sa 2,000-2,600 trade. Pinaiikli ng exit sa muling pagtawid sa midline ang mga trade sa humigit-kumulang 1 ATR, na masyadong maliit para sa round trip sa 1H. Ibinubunyag ang pagpili ng instrumento (L122): nagsala ako ng SOL/XRP/LINK/DOGE/AVAX/ETH/BNB sa BYBIT sa 4H/12H/1D. Pinili ko ang ETHUSDT 4H dahil ito lang ang kombinasyong may (a) >= 500 panghabambuhay na trade, (b) magkapantay na long at short na kita (netong +0.38% long / +0.39% short, kaya hindi ito nakatagong long beta), at (c) positibong net sa 4 sa 6 taon ng kalendaryo nang walang nangingibabaw na iisang taon. Mas mataas ang PF ng ilang kombinasyong 1D/12H (SOL 1D PF 2.6), pero 70-170 trade lang ang mga iyon at nakapokus sa iisang taon at sa long side, kaya hindi pumapasa ang mga ito sa L128/L170. Venue: BYBIT linear perp (0.8% bahagi ng corpus laban sa target na >= 5%). Pure-price ang trigger, kaya hindi saklaw ang paghihigpit sa karagdagang feed na L160. May ~5.5 taon ng kasaysayan sa 4H ang Bybit ETH (mula 2021-03, ~12,100 bar). Iniiwasan ang BTC (labis ang konsentrasyon), gayundin ang Hyperliquid (L168: maikli ang kasaysayan). Iba ang mga trigger at exit ng iba pang ETH kandidato ng factory (OKX SuperTrend, momentum na kinukumpirma ng volume). Breakout ito ng volatility band na nakatali ang exit sa gumagalaw na midline, at halos 33% ng oras ay walang posisyon.

Inaayos ng Iteration 3 ang Layer-3 sandbox_timeout. Ang tanging per-bar loop na kontrolado ng strategy ay ang 50-bar na kabuuan ng true range na ginagamit para muling buuin ang ATR sa bawat bar. Isa na itong rolling scalar sum: idinadagdag ang pinakabagong TR at ibinabawas ang TR na lumalabas sa window, na may minsanang O(atr_len) na muling pagsisimula sa unang bar o pagkatapos ng puwang. Dahil dito, O(1) ang gastos sa bawat bar. Incremental na ang midline ng EMA, kaya walang muling pagsuri sa history at walang karagdagang feed. Hindi nagbago kahit isang byte ang lohika ng entry, exit, signal at sizing, kaya nananatiling pasado ang Layers 1 at 2. Nasa humigit-kumulang 50 float ops na bawat bar ang code sa ~12k na mga bar, kaya kung maulit ang timeout, malamang na dulot ito ng load ng harness o engine, hindi ng pagkalkula ng strategy.

verification_loop: sandbox_timeout: Nabigo ang beripikasyon (Layer 3 — sandbox backtest): lumampas ang smoke test sa limitasyong 300s ng wall-clock sa ~20000-bar na saklaw (2400 araw ng ETHUSDT.BYBIT-4-HOUR-LAST-EXTERNAL). Karaniwang nangangahulugan ito na ang trabaho sa bawat bar ay lumalaki kasabay ng history — halimbawa, muling pagsuri sa buong serye ng funding/karagdagang datos, o muling pagbuo ng listahan at pagtawag sa min()/sorted() sa loob ng calculate_signal()/on_bar() sa bawat bar. Paunang kalkulahin ang mga nakaayos na timestamp array ONCE sa __init__ at gamitin ang bisect, o mag-cache ng mga lookup ayon sa timestamp para maging O(log n) ang gastos sa bawat bar, hindi O(n).

Implementasyon

Breakout ng King Keltner (Raschke) channel sa ETHUSDT.BYBIT 4H. Midline = EMA(karaniwang presyo, 20); band = +/- -1.0 x SMA(TrueRange, 50). Long kapag tumataas ang midline at nasa itaas ng upper band ang close; short kapag bumababa ang midline at nasa ibaba ng lower band ang close. Exit kapag nagsara ang presyo pabalik sa kabilang panig ng midline. Ang signal ay distansiya ng close mula sa midline sa yunit na ATR. Ang sizing ay 0.9 x equity notional sa 1x.

Mga Resulta ng Beripikasyon

sandbox_timeout: Nabigo ang beripikasyon (Layer 3 — sandbox backtest): lumampas ang smoke test sa limitasyong 300s ng wall-clock sa ~20000-bar na saklaw (2400 araw ng ETHUSDT.BYBIT-4-HOUR-LAST-EXTERNAL). Karaniwang nangangahulugan ito na ang trabaho sa bawat bar ay lumalaki kasabay ng history — halimbawa, muling pagsuri sa buong serye ng funding/karagdagang datos, o muling pagbuo ng listahan at pagtawag sa min()/sorted() sa loob ng calculate_signal()/on_bar() sa bawat bar. Paunang kalkulahin ang mga nakaayos na timestamp array ONCE sa __init__ at gamitin ang bisect, o mag-cache ng mga lookup ayon sa timestamp para maging O(log n) ang gastos sa bawat bar, hindi O(n).

Buod ng Resulta

Dahil ang anumang gastos sa bawat bar na lumalaki kasabay ng history ay nagdudulot ng timeout sa sandbox bago masubukan ang signal, dapat isulat ang bawat indicator bilang incremental state na O(1) mula pa sa unang iteration, at dapat suriin kung posibleng natitirang bottleneck ang paghawak ng history ng base class (gaya ng self._bars buffer).

Matapos ang 3 iteration, iniwan ang strategy sa proseso ng beripikasyon. Bumagsak ang Layer 3 (sandbox backtest) sa sandbox_timeout: lumampas ang smoke test sa limitasyong 300s ng wall-clock sa ~20,000-bar na saklaw (2400 araw ng ETHUSDT.BYBIT 4H). Nangyari ito kahit pinalitan na ng iteration 3 ang per-bar na loop na ATR ng rolling sum na O(1).

Breakout ng King Keltner (Raschke) channel sa ETHUSDT.BYBIT 4H, purong OHLCV: long kapag tumataas ang midline na EMA(karaniwang presyo, 20) at nasa itaas ng mid + 1.0x SMA(TrueRange, 50) ang close; short sa kabaligtarang kondisyon, at exit kapag muling tumawid sa midline ang close. Inilipat ang pagitan sa 4H mula 1H dahil ipinakita ng paunang pag-aaral ng mananaliksik na nalulugi sa bayarin ang bersyong 1H.

Walang datos ng performance mula sa factory dahil walang laman ang ulat ng backtest at walang isinagawang optimization. Ang tanging mga numero ay mula sa paunang pag-aaral mismo ng hypothesis, na nag-ulat ng netong +0.38% kada trade sa mga long at +0.39% sa mga short para sa ETHUSDT 4H, at netong -0.14% hanggang 0.00% kada trade (PF 0.82-1.00) para sa bersyong 1H.

Ang Stratmill ay isang tool para sa pananaliksik at paper trading, hindi payo sa pananalapi o isang broker. Ang mga resulta ng backtest at paper trading ay hypothetical. May panganib ng pagkalugi ang pangangalakal.