Analyses
    Active rules 0/0

    New Analysis

    Main pool
    Bonus (optional)

    Load Past-Draw History

    Pick a CSV or JSON file

    Accepted columns: date, n1..nK[, b1..bK] for CSV, or a JSON array of {date, main, bonus?} objects.

    no file selected

    HTTP / HTTPS URL

    Format auto-detected from response Content-Type.

    Paste raw CSV or JSON

    Switching backend reloads the window. Analyses are stored on the backend you load them on.

    Add custom rule
    How to build a rule A rule = (something to measure) × (how to score it) Click to show the tutorial again
    1
    Name & describe it

    Lowercase id used by configs. The description shows in the rules list.

    2
    Cells label your numbers like a spreadsheet

    Inside any formula, A…last letter refer to the sorted main numbers. BONUS is the bonus pick. A:F is a range — the whole combo.

    A7
    B14
    C23
    D31
    E39
    F48
    BONUS12

    ↑ smallest at A, largest at the last letter.

    Cross-draw refs. Append a recency index: A1 is the smallest of the latest historical draw, A2 of the one before, and so on. A0 is the candidate (same as bare A). Use PREV(k) for the whole kth-most-recent draw as a list.

    k=0 (you) A? B? C? …?
    k=1 (latest) A13 B112 C119 F141
    k=2 A27 B211 C218 F247

    Example as a Filter: A1 + A0 != A2 + A1 — your smallest must differ from the smallest two draws ago (Excel <> becomes !=).

    3
    Choose what to measure (the Feature)

    Two ways. Preset is a one-click pick from the built-in catalogue. Formula is an Excel-style expression — pick this for anything the catalogue doesn't cover.

    Preset Formula
    = MAX(A:F) - MIN(A:F)

    Functions: SUM, AVG, MIN, MAX, COUNT(A:F, ODD), IS_AP(A:F), IS_PRIME(A), BBOX_AREA(A:F), HIST_MEAN("sum"), …

    4
    Choose how to score it

    The feature value is a number. Scoring turns it into 0..1 (or pass/fail for a Filter). Each curve shows how the score responds as the feature value varies.

    gaussian
    peak at target, decays by σ
    distribution_match
    score = P(value) in history
    exact
    spike at the target value
    threshold
    hard yes/no — Filters use this
    linear_decay
    peaks at target, falls off linearly
    pass_through
    value already in [0, 1]; clamp & return
    exp_decay
    starts at 1, decays away (good for distances)
    5
    Watch the live preview

    The strip below the form runs your formula against a sample combo as you type. Click Resample for a different combo.

    Preview [3 12 19 27 34 41] → 0.872
    6
    Save & use

    The new rule lands under the category you picked. Tick the box, set its weight, run /pick — it behaves exactly like a built-in.

    ✓ spread_score scorer 2.0 favours combos with a typical max−min spread

    Feature

    Equivalent formula:

    Scoring


    Preview —