본문으로 건너뛰기
geonulab

geonulab · System Lab

System Lab

이길 전략이 아니라, 맞을 때와 틀릴 때를 아는 설계.

Assumption · Regime · Edge · Failure · Verifiability

수익 곡선으로 설득하지 않습니다. 시장에 대한 가설을 규칙으로 옮기고, 그 규칙이 언제 유효한지 밝히는 실험실입니다.

55

Exploded · five axes

design language

  • A

    Assumption

    가설이 없으면 전략이 아니다

  • R

    Regime

    그 믿음이 유효한 구간

  • E

    Edge

    가정이 관측으로 드러난 순간

  • F

    Failure

    틀리면 어떤 형태로 망가지는가

  • V

    Verify

    다시 재생할 수 있는가

Assembled · bench

Scroll · reveal

Mission · from the bench

우리는 이길 전략을 팔지 않습니다.
왜 이 규칙이 여기선 맞고
저기선 틀리는지를
설계하는 방법을 만듭니다.

노트 위의 가정에서 시작해, 다섯 축으로 펼칩니다. 스크롤하면 조립된 장면이 걷히고 설계의 분해도가 드러납니다.

Click stage to pin · Assembled / Exploded

§ 01 · The wrong question

“수익률이 좋아?”가 아니라 “무슨 가정을 하는가?”

신호 상품은 언제 살지를 알려줍니다. 전략 설계는 그 규칙이 언제 의미가 있는지를 알려줍니다. System Lab은 후자입니다.

Not · 신호

지금 살까?

But · 전략

어떤 가정 아래 행동할까?

Not · 결과

백테스트 +X%?

But · 한계

가정이 깨지면 어떻게 망가지나?

Not · 한 전략 고정

모든 구간에 같은 규칙

But · Regime

지금이 그 가정의 방인가?

§ 02 · Why this design

전략 설계의 다섯 축

모든 패턴과 플러그인은 이 다섯으로 설명됩니다. 결과가 아니라 설계의 언어입니다.

  1. 01

    AssumptionWhat we believe

    시장에 대해 무엇을 믿는가. 가설이 없으면 전략이 아니라 우연한 규칙 묶음이다.

  2. 02

    RegimeWhen it holds

    그 믿음이 유효한 구간. 가정은 항상 참이 아니다 — 특정 상태에서만 잠정적으로 참이다.

  3. 03

    EdgeWhat counts as opportunity

    예측이 아니라 확인. 가정이 관측으로 드러난 순간에만 행동한다.

  4. 04

    FailureHow it breaks

    가정이 틀리면 어떤 손실 형태가 나오는가. 실패를 숨기지 않는 설계가 신뢰다.

  5. 05

    VerifiabilityCan we replay it

    같은 규칙을 backtest와 live에서 다시 돌릴 수 있는가. 재현 가능성이 시스템의 본질이다.

§ 03 · The products

이해를 도구로 옮기는 네 가지.

Spec · Plug-in · Starter · Bundle. 개념을 이해한 뒤에야 의미가 있는 제품 층입니다.

01 · Spec Pack

가정을 문서로.

Assumption · Regime · Edge · Failure · Parity. 실행 코드 없이 설계만 가져갑니다.

Document · ₩49,000

Spec waitlist

PATTERN.md · excerpt

01Assumption
02Regime
03Edge
04Failure
05Parity

02 · Algorithm Plug-in

설계를 코드로.

Starter registry에 꽂히는 Strategy 구현. 신호가 아니라 재현 가능한 플러그인.

Code · ₩89k–₩129k / pattern

Plug-in waitlist
12345678
class MeanRevertBB(Strategy):
  name = "mean_revert_bb"

  def add_entry_signals(self, df):
    # stretch → recovery edge
    return df
plug-mr-bb

03 · Starter Repo

규칙을 시스템으로.

backtest → paper → live. kernel · risk · state · parity — 운영 OS starter.

OS · ₩249,000 license

Starter waitlist

system-lab-starter/

├── src/signals/     registry
├── src/kernel/      shared decision
├── src/backtest/    2-pass runner
├── src/live/        paper → live
├── src/parity/      golden kit
└── config/examples/

04 · Builder Bundle

처음부터 돌리는 세트.

Starter + Spec + MR · Breakout plug-in. 첫 구매 단위로 설계했습니다.

Bundle · ₩379,000

Bundle waitlist

Builder Bundle · ₩379,000

  • Starter Repo₩249k
  • Spec Pack₩49k
  • plug-mr-bb₩89k
  • plug-breakout₩99k

Individual ~₩486k → Bundle ₩379k

§ 03 · Pattern map

상태마다 다른 가정이 필요하다

한 종목에 전략 하나를 고정하지 않습니다. 가정이 맞는 패턴만 켭니다. 아래는 ‘왜 이 패턴인가’의 본질 답입니다.

01 · Trend

Acceleration trend follow

Why방향성 구간에서 추세·가속 확인 edge만 취하려고.

Not when박스·무방향 — 가정 불성립

02 · Mean reversion

Band reversion with vol gate

Why약한 추세·압축 구간에서 stretch→recovery만 다루려고.

Not when강한 추세·변동 확대 — 되돌림이 아니라 추세의 시작

03 · Breakout

Range compression breakout

Why압축이 풀리는 순간을 종가·참여로 확인하려고.

Not when이미 긴 추세·압축 없음 — trend 연장과 혼동

§ 05 · Pattern cards

가정을 카드로 펼쳐 보기

regime · edge · failure · parity. 스펙 요약과 pseudocode excerpt.

Trend01
Reference impl

Acceleration trend follow

Slope + acceleration edge on regime filter

추세 구간에서 slope·acceleration edge가 flip할 때 진입. HTF regime과 정렬된 구간만 허용.

Inputs

price · atr · htf_state

System concern

Build · Execute

Failure modes

  • Whipsaw in range
  • Stale entry after gap

Pseudocode · excerpt

long_ready  = htf_aligned AND accel_up_confirmed
long_entry  = long_ready AND NOT long_ready[-1]
sl          = entry - sl_atr_mult * atr
tp1         = partial at tp1_atr · trail remainder

Parity: Sub-bar SL/TP order matters · edge on ready flip only

Full spec →
Mean reversion02
Spec + pseudocode

Band reversion with vol gate

Extreme stretch + volatility contraction filter

밴드 밖 과stretch 후 mid band 되돌림. 추세·변동성 확대 구간에서는 MR 차단.

Inputs

bb_width · rsi · atr · htf_er

System concern

Build · Execute

Failure modes

  • Trend continuation
  • Vol expansion miss
  • Band walk
  • +1 more

Pseudocode · excerpt

mr_allowed = bb_width_pct <= 40 AND htf_er <= 0.35
long_stretch  = close[-1] < lower[-1]
long_recovery = close > lower AND close > close[-1]
long_entry    = edge(mr_allowed AND long_stretch AND long_recovery)
sl            = entry - 1.5 * atr · tp = mid

Parity: Closed bars only · TP wick vs close fixed · SL first on tie

Full spec →
Breakout03
Spec + pseudocode

Range compression breakout

N-bar range → expansion with false-break guard

range 압축 후 확장 breakout. wick-only break는 false-break exit로 처리.

Inputs

range_high · range_low · volume · atr

System concern

Build · Execute

Failure modes

  • False breakout
  • Low participation
  • Already-expanded vol
  • +1 more

Pseudocode · excerpt

compressed = range_width_pct <= 20
long_break = close > range_high + 0.10 * atr
long_entry = edge(compressed AND long_break AND vol_ok)
sl = range_mid · tp = entry + 2.0 * atr
false_break: close inside range within 2 bars → exit

Parity: Range window excludes current bar · false-break close-based

Full spec →
Flow-aware04
Library v2

Flow-confirmed trend

Price trend + capital flow divergence check

가격 추세와 수급/ breadth가 같은 방향일 때만 trend follow. divergence 시 진입 억제.

Inputs

price · foreign_flow · breadth

System concern

Build · Flow & Data

Failure modes

  • Divergence without confirmation
  • Flow lag vs price

Pseudocode · excerpt

# v2 — spec pending
trend_ok = price_trend AND flow_confirms AND breadth_ok
long_entry = edge(trend_ok AND accel_up)

Parity: Flow data as-of timestamp must match bar close

Coming in library v2

§ 05 · Early access

설계를 먼저 읽고, 도구는 그다음에.

Pattern Spec과 Builder Bundle(₩379,000)이 준비되면 waitlist 순으로 안내합니다. 수익을 약속하지 않습니다.

Not investment advice · No signals · No performance guarantees · Past backtests ≠ future results