Lazy Trader / Docs

Lazy Trader

plan-*.cfg generator for AI agents

Normative AI instructions, model-specific recipes, and deterministic StrategySpec → plan-*.cfg compilation.

ManualCFGTesterSupport

For the user

Prompt for AI

Copy and send this prompt to the AI — everything it needs is already included.

Open https://hinn.in/en/lazy-trader/cfg-flow and use this page as the sole source of Lazy Trader rules and file-format requirements.

Create a universal, logically justified trading plan:
— use one unique model by default;
— choose an independent Direction and one or two independent Start After conditions for that model;
— do not bind the strategy to a symbol or broker;
— do not duplicate the same signal family across Direction and Start After.

Follow every “AI INSTRUCTION” block and the machine-readable contract on the page. First produce StrategySpec, then validate it with the embedded compiler.

Return:
1. A concise explanation of the model, Direction, and Start After roles.
2. A ready plan-*.cfg that passes semantic validation and CFG contract validation.

Do not invent fields or serialize CFG manually. If the embedded compiler is unavailable, return a valid StrategySpec JSON with no comments or additional prose inside the JSON block.

AI INSTRUCTION

Machine-readable contract

{
  "strategy": {
    "id": "hinn.lazy-trader.strategy-spec",
    "version": 1,
    "purpose": "Reason about one universal model plan; deterministic code owns CFG serialization.",
    "profile": {
      "id": "universal-autonomous-baseline",
      "defaultModelCount": 1,
      "maxRiskPercent": 0.5,
      "maxPositions": 1,
      "defaultRiskPercent": 0.25,
      "defaultModelShare": 0.25,
      "defaultStartConditionCount": [
        1,
        2
      ],
      "brokerOrSymbolQuestions": false,
      "avoids": [
        "absolute entry/stop/take prices",
        "fixed point-size assumptions",
        "broker-clock session windows",
        "hedging-only Market Gate and After Close"
      ]
    },
    "modelTypes": [
      "bf",
      "lw",
      "cst",
      "csr",
      "ma",
      "bpr",
      "market"
    ],
    "directionTypes": [
      "longs",
      "shorts",
      "box",
      "ma",
      "swing",
      "absorption",
      "fvg"
    ],
    "startConditionTypes": [
      "previous_day_high",
      "previous_day_low",
      "previous_week_high",
      "previous_week_low",
      "previous_weekday_level",
      "absorption",
      "fractal_raid",
      "swing",
      "premium_discount",
      "imbalance",
      "ma_cross"
    ],
    "requiredTopLevel": [
      "contract",
      "version",
      "profile",
      "name",
      "models",
      "direction",
      "startAfter",
      "risk",
      "rationale"
    ],
    "schema": {
      "topLevel": {
        "additionalProperties": false,
        "properties": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "3..48 lowercase file-safe suffix without plan-",
          "allowSharedContext": "optional boolean; true only for an explicitly requested multi-model plan",
          "sharedContextRationale": "required concrete explanation when allowSharedContext=true"
        }
      },
      "model": {
        "required": [
          "type",
          "tf"
        ],
        "additionalProperties": false,
        "properties": {
          "type": [
            "bf",
            "lw",
            "cst",
            "csr",
            "ma",
            "bpr",
            "market"
          ],
          "tf": "supported MQL5 timeframe integer"
        }
      },
      "direction": {
        "required": [
          "type"
        ],
        "additionalProperties": false,
        "properties": {
          "type": [
            "longs",
            "shorts",
            "box",
            "ma",
            "swing",
            "absorption",
            "fvg"
          ],
          "tf": "required for box/ma/swing/absorption/fvg",
          "fast": "MA only, integer 1..500 and lower than slow",
          "slow": "MA only, integer 1..500 and higher than fast",
          "method": "MA only: 0=SMA, 1=EMA, 2=SMMA, 3=LWMA",
          "price": "MA only: 0=Close, 1=Open, 2=High, 3=Low, 4=Median, 5=Typical, 6=Weighted"
        }
      },
      "startAfter": {
        "required": [
          "type"
        ],
        "additionalProperties": false,
        "properties": {
          "type": [
            "previous_day_high",
            "previous_day_low",
            "previous_week_high",
            "previous_week_low",
            "previous_weekday_level",
            "absorption",
            "fractal_raid",
            "swing",
            "premium_discount",
            "imbalance",
            "ma_cross"
          ],
          "tf": "required for absorption/fractal_raid/swing/premium_discount/imbalance/ma_cross",
          "rearmTf": "required for imbalance and not lower than tf",
          "fast": "ma_cross only, integer 1..500 and lower than slow",
          "slow": "ma_cross only, integer 1..500 and higher than fast",
          "method": "ma_cross only: 0..3",
          "price": "ma_cross only: 0..6",
          "structureType": "swing only: 1 or 2",
          "breakMode": "swing only: 1=body or 2=wick",
          "directionCount": "swing only: 1,2,3,11,12,13,21,22,23,31,32,33",
          "fractalType": "swing only: 1..3",
          "fractalMode": "fractal_raid or swing: 3 or 5",
          "bodyFactor": "absorption only: 0.1..100",
          "weekday": "previous_weekday_level only: 1..5",
          "level": "previous_weekday_level only: high or low"
        }
      },
      "risk": {
        "required": [
          "percent",
          "modelShare",
          "maxPositions"
        ],
        "additionalProperties": false,
        "properties": {
          "percent": "0.01..0.5",
          "modelShare": ">0..1; combined shares across models must be <=1",
          "maxPositions": 1
        }
      },
      "rationale": {
        "required": [
          "model",
          "direction",
          "startAfter",
          "originality"
        ],
        "additionalProperties": false,
        "properties": {
          "model": "concrete model role",
          "direction": "independent bias role",
          "startAfter": "independent arming-event role",
          "originality": "why signal families are complementary rather than duplicated"
        }
      }
    },
    "defaults": {
      "oneModelPerPlan": true,
      "startConditionCount": "1..2",
      "timeframeHierarchy": "Direction TF >= Start After TF >= model execution TF",
      "cfgWire": "UTF-16LE BOM + CRLF"
    },
    "hardDuplicatePairs": [
      [
        "direction.ma",
        "startAfter.ma_cross"
      ],
      [
        "direction.swing",
        "startAfter.swing"
      ],
      [
        "direction.absorption",
        "startAfter.absorption"
      ]
    ],
    "relatedPairs": [
      {
        "pair": [
          "direction.fvg",
          "startAfter.imbalance"
        ],
        "policy": "warning; require distinct roles and timeframes"
      }
    ],
    "protocol": [
      "Choose one model by default. Never repeat a model kind inside one plan.",
      "Choose Direction for bias, then one or two independent Start After arming conditions.",
      "Explain the model, Direction, Start After, and originality before compilation.",
      "Do not ask for a symbol or broker and do not use absolute price, fixed-point, broker-clock, or hedging-only assumptions.",
      "Submit StrategySpec to the deterministic compiler. Never hand-write the full CFG.",
      "Return a plan CFG only when semantic validation and the owner CFG contract both have zero blocking errors.",
      "Treat every generated strategy as a universal test hypothesis, not a profit or live-suitability claim."
    ],
    "recipes": [
      {
        "id": "bf-swing-pd-raid",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-bf-swing-raid",
          "models": [
            {
              "type": "bf",
              "tf": 5
            }
          ],
          "direction": {
            "type": "swing",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "premium_discount",
              "tf": 16385
            },
            {
              "type": "fractal_raid",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Box Fractal provides the executable range-break entry.",
            "direction": "Higher-timeframe Swing supplies directional structure without repeating the entry trigger.",
            "startAfter": "Premium/Discount supplies location and Fractal Raid supplies an independent arming event.",
            "originality": "Structure, location, and liquidity-event families are complementary rather than duplicated."
          }
        }
      },
      {
        "id": "lw-box-absorption",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-lw-box-absorption",
          "models": [
            {
              "type": "lw",
              "tf": 5
            }
          ],
          "direction": {
            "type": "box",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "absorption",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Larry Williams executes the range-boundary participation logic.",
            "direction": "Box Direction supplies an independent range bias above the execution timeframe.",
            "startAfter": "Absorption waits for a reaction before the model is allowed to participate.",
            "originality": "Range location and order-flow reaction use distinct signal families."
          }
        }
      },
      {
        "id": "cst-ma-pd",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-cst-ma-pd",
          "models": [
            {
              "type": "cst",
              "tf": 5
            }
          ],
          "direction": {
            "type": "ma",
            "tf": 16385,
            "fast": 20,
            "slow": 50,
            "method": 1,
            "price": 0
          },
          "startAfter": [
            {
              "type": "premium_discount",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Classic Structure Trend executes continuation after its own structural trigger.",
            "direction": "Higher-timeframe MA supplies broad bias without duplicating the structural model.",
            "startAfter": "Premium/Discount constrains participation to a separate location condition.",
            "originality": "Trend bias, structural entry, and location are three independent responsibilities."
          }
        }
      },
      {
        "id": "csr-absorption-raid",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-csr-absorption-raid",
          "models": [
            {
              "type": "csr",
              "tf": 5
            }
          ],
          "direction": {
            "type": "absorption",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "fractal_raid",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Classic Structure Reversal executes only after its internal regime-change logic.",
            "direction": "Higher-timeframe Absorption supplies reaction bias before the reversal trigger.",
            "startAfter": "Fractal Raid adds an independent liquidity event at the arming layer.",
            "originality": "Reaction bias, liquidity event, and structural reversal do not repeat one signal."
          }
        }
      },
      {
        "id": "ma-swing-level-pd",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-ma-swing-location",
          "models": [
            {
              "type": "ma",
              "tf": 5
            }
          ],
          "direction": {
            "type": "swing",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "previous_day_low"
            },
            {
              "type": "premium_discount",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Moving Averages executes the pullback entry with its own fractal validation.",
            "direction": "Higher-timeframe Swing supplies structure instead of repeating the model MA family.",
            "startAfter": "Previous-day level and Premium/Discount add separate level and location conditions.",
            "originality": "Structural bias, historical level, location, and MA execution remain distinct."
          }
        }
      },
      {
        "id": "bpr-absorption-swing",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-bpr-absorption-swing",
          "models": [
            {
              "type": "bpr",
              "tf": 5
            }
          ],
          "direction": {
            "type": "absorption",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "swing",
              "tf": 15
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "BPR executes from a balanced inefficiency zone.",
            "direction": "Higher-timeframe Absorption supplies directional reaction context.",
            "startAfter": "Swing alignment adds an independent structural arming condition.",
            "originality": "Reaction bias, structural permission, and imbalance execution use separate families."
          }
        }
      },
      {
        "id": "market-fvg-imbalance",
        "spec": {
          "contract": "hinn.lazy-trader.strategy-spec",
          "version": 1,
          "profile": "universal-autonomous-baseline",
          "name": "universal-market-fvg-imbalance",
          "models": [
            {
              "type": "market",
              "tf": 1
            }
          ],
          "direction": {
            "type": "fvg",
            "tf": 16385
          },
          "startAfter": [
            {
              "type": "imbalance",
              "tf": 15,
              "rearmTf": 16385
            }
          ],
          "risk": {
            "percent": 0.25,
            "modelShare": 0.25,
            "maxPositions": 1
          },
          "rationale": {
            "model": "Market executes immediately after all plan gates become ready.",
            "direction": "Higher-timeframe FVG supplies bias rather than the execution event.",
            "startAfter": "Lower-timeframe Imbalance is the separate arming event with higher-timeframe rearm.",
            "originality": "Related inefficiency concepts are separated by role and timeframe, which remains explicitly warned."
          }
        }
      }
    ]
  },
  "cfg": {
    "id": "hinn.lazy-trader.cfg-flow",
    "version": 1,
    "wire": "UTF-16LE BOM + CRLF",
    "versions": {
      "pack": 2,
      "plan": 1
    },
    "creatableKinds": [
      1,
      2,
      3,
      4,
      6,
      7,
      8
    ],
    "loaderOnlyKinds": {
      "5": "MS"
    },
    "modelCatalog": [
      {
        "kind": 1,
        "id": "TRB/BF",
        "creatable": true
      },
      {
        "kind": 2,
        "id": "LT/LW",
        "creatable": true
      },
      {
        "kind": 3,
        "id": "DR",
        "creatable": true
      },
      {
        "kind": 4,
        "id": "SMR",
        "creatable": true
      },
      {
        "kind": 5,
        "id": "MS",
        "creatable": false,
        "compatibility": "loader-only"
      },
      {
        "kind": 6,
        "id": "MA",
        "creatable": true
      },
      {
        "kind": 7,
        "id": "BPR",
        "creatable": true
      },
      {
        "kind": 8,
        "id": "Market",
        "creatable": true
      }
    ],
    "directionModes": [
      -1,
      0,
      1,
      2,
      3,
      4,
      5,
      6
    ],
    "riskModes": [
      0,
      1,
      2
    ],
    "sectionOrder": [
      "models pack",
      "First/Then schema",
      "plan",
      "dynamic box/time rows"
    ],
    "linkedNames": {
      "embeddedV2PlanV1": "metadata-fallback-not-loaded",
      "compatibility": "Only incomplete or legacy files can fall back to named child CFG files; portal examples never use that path."
    },
    "rules": [
      "Use strict 0/1 booleans, plain integers, and owner fixed-decimal output; never hand-format saver records.",
      "Market (kind 8) requires a unique 32-character lowercase instance_id; Gate and After Close are hedging-only caveats.",
      "First/Then references are kind-local, zero-based indexes, not global model positions.",
      "For embedded pack v2 + plan v1, embedded values remain authoritative; linked names are metadata/fallback and are not loaded.",
      "Warnings (Direction Off, no enabled models, hedging-only options) do not block export; schema/version/key/range errors do.",
      "Examples are educational starting points with assumptions, never profit or suitability claims."
    ]
  }
}

AI INSTRUCTION

Strategy design rules

  1. Choose one model by default. Never repeat a model kind inside one plan.
  2. Choose Direction for bias, then one or two independent Start After arming conditions.
  3. Explain the model, Direction, Start After, and originality before compilation.
  4. Do not ask for a symbol or broker and do not use absolute price, fixed-point, broker-clock, or hedging-only assumptions.
  5. Submit StrategySpec to the deterministic compiler. Never hand-write the full CFG.
  6. Return a plan CFG only when semantic validation and the owner CFG contract both have zero blocking errors.
  7. Treat every generated strategy as a universal test hypothesis, not a profit or live-suitability claim.

AI INSTRUCTION

StrategySpec recipe library

Box Fractal: structure, PD, and raid

Swing supplies context while PD and Fractal Raid independently arm the Box Fractal entry.

Model
bf
Direction
swing
Start After
premium_discount + fractal_raid

Larry Williams: box and absorption

Box supplies range bias while Absorption arms Larry Williams after an independent reaction.

Model
lw
Direction
box
Start After
absorption

Classic Trend: MA and Premium/Discount

MA supplies bias while Premium/Discount keeps structural continuation in a suitable location.

Model
cst
Direction
ma
Start After
premium_discount

Classic Reversal: absorption and raid

Absorption supplies reaction bias while Fractal Raid waits for a separate event before the reversal model.

Model
csr
Direction
absorption
Start After
fractal_raid

MA: swing, previous level, and PD

Swing supplies higher context while a previous level and PD shape the location for the MA entry.

Model
ma
Direction
swing
Start After
previous_day_low + premium_discount

BPR: absorption and structure

Absorption supplies bias while Swing arms BPR only after structural alignment.

Model
bpr
Direction
absorption
Start After
swing

Market: FVG and Imbalance with distinct roles

FVG supplies bias while lower-timeframe Imbalance is a distinct arming event for the immediate Market entry.

Model
market
Direction
fvg
Start After
imbalance

AI INSTRUCTION

Deterministic StrategySpec → CFG compiler

INPUT: StrategySpec JSON matching the contract above. OUTPUT: plan-*.cfg only with zero semantic and CFG errors.

PASS — CFG is ready to download

Semantic validation

No errors

CFG contract validation

No errors

Compiled CFG

pack_version=2
pack_label=models
history_depth=240
between_models_on=0
between_models_minutes=1
model_total=1
model_0_kind=1
model_0_show=0
model_0_on=1
model_0_tf=5
model_0_user_label=cfg_trb
model_0_cfg_name=cfg_trb
model_0_basic_cfg_name=basic_trb
model_0_be_enabled=0
model_0_be_trigger=0.8000
model_0_be_offset=0.1000
model_0_min_sl_on=0
model_0_min_sl_pts=0
model_0_max_sl_on=0
model_0_max_sl_pts=0
model_0_min_sl_fractal_on=0
model_0_tp_count=1
model_0_tp1_plan_tp=0
model_0_tp_rr_0=3.0000
model_0_tp_volume_pct_0=100.0
model_0_field_74=0.2500
model_0_field_1=1.0000
model_0_field_16=3.0000
model_0_field_17=5.0000
model_0_field_2=1.0000
model_0_field_3=0.8000
model_0_field_8=1.0000
model_0_field_10=120.0000
model_0_field_13=1.0000
model_0_field_14=0.8000
model_0_field_15=0.1000
model_0_field_70=0
model_0_field_71=0.0000
model_0_field_72=0
model_0_field_73=0.0000
model_0_field_86=0
model_0_field_87=1
model_0_field_88=0
model_0_field_89=1.0000
model_0_field_101=0
model_0_field_102=0.0000
model_0_field_104=0
model_0_field_105=0.5000
model_0_field_106=0
model_0_field_107=1.0000
model_0_field_108=0
model_0_field_109=3.0000
model_0_field_110=15.0000
model_0_field_112=0
model_0_field_99=0
model_0_field_100=1.0000
schema_first_count=0
schema_then_count=0
plan_version=1
plan_label=universal-bf-swing-raid
plan_enabled=1
risk_mode=0
risk_value=0.250000
risk_value_base=0.250000
logic_mode=0
direction_mode=4
direction_fvg_schema=1
direction_fvg_tf=15
direction_fvg_bpr=0
direction_fvg_longs=1
direction_fvg_shorts=1
direction_fvg_respect_tf=0
direction_fvg_show=0
direction_obs_tf1_on=0
direction_obs_tf1=15
direction_obs_tf2_on=0
direction_obs_tf2=1
direction_obs_tf3_on=0
direction_obs_tf3=16385
direction_obs_body_factor_on=0
direction_obs_body_factor=1.0000
direction_obs_sweep_rule=0
direction_obs_wick_rule=0
direction_obs_avg_body_rule=0
direction_obs_show=0
direction_obs_change_dir_on_break=0
direction_ma_tf=15
direction_ma_fast=20
direction_ma_slow=50
direction_ma_method=1
direction_ma_price=0
direction_ma_longs=1
direction_ma_shorts=1
direction_ma_distance_on=0
direction_ma_distance_points=0
direction_ma_distance_auto=1
direction_ma_show=0
direction_box_show=0
direction_swing_tf1_on=1
direction_swing_tf1=16385
direction_swing_tf2_on=0
direction_swing_tf2=15
direction_swing_tf3_on=0
direction_swing_tf3=5
direction_swing_type=2
direction_swing_mode=3
direction_swing_structure_type=1
direction_swing_break_mode=2
direction_swing_dir_count=1
direction_swing_show=0
direction_swing_tf1_show=0
direction_swing_tf2_show=0
direction_swing_tf3_show=0
entry=0.0000000000
stop=0.0000000000
take=0.0000000000
cond_start=0
cond_struct=0
start_struct_long=0
cond_pd=1
cond_imbalance=0
cond_start_obsorbation=0
start_obs_tf=15
start_obs_sweep_rule=0
start_obs_wick_rule=0
start_obs_avg_body_rule=0
start_obs_body_factor_on=0
start_obs_body_factor=1.0000
start_obs_change_dir_on_break=0
cond_start_fractal_raid=1
start_fractal_tf=15
start_fractal_mode=3
start_fractal_term=0
start_fractal_rule=0
start_fractal_lifetime_unit=0
start_fractal_lifetime_value=1
start_fractal_actuality_unit=0
start_fractal_actuality_value=1
cond_ma=0
cond_start_time=0
cond_time=0
start_struct_tf=16385
start_struct_type=1
start_struct_mode=5
start_struct_structure_type=1
start_struct_break_mode=2
start_struct_dir_count=1
start_pd_tf=16385
start_imbalance_tf=15
start_imbalance_rearm_tf=16385
start_imbalance_rearm_type=1
start_imbalance_rearm_mode=5
start_imbalance_rearm_structure_type=1
start_imbalance_rearm_break_mode=2
start_imbalance_rearm_dir_count=1
start_imbalance_rearm_pd_only=0
start_prev_day_high=0
start_prev_day_high_time_cfg=0
start_prev_day_low=0
start_prev_day_low_time_cfg=0
start_prev_week_high=0
start_prev_week_high_time_cfg=0
start_prev_week_low=0
start_prev_week_low_time_cfg=0
start_prev_weekday_level=0
start_prev_weekday_level_time_cfg=0
start_prev_weekday_day=1
start_prev_weekday_high=1
start_prev_levels_one_of=0
start_ma_tf=15
start_ma_fast=20
start_ma_slow=50
start_ma_method=1
start_ma_price=0
start_ma_longs=1
start_ma_shorts=1
start_ma_distance_on=0
start_ma_distance_points=0
start_ma_distance_auto=1
start_vis_show=0
end_vis_show=0
time_vis_show=1
start_time_h=0
start_time_m=0
cond_tp=0
cond_sl=0
cond_max=1
cond_end_time=0
end_time_h=23
end_time_m=59
end_prev_day_high=0
end_prev_day_high_time_cfg=0
end_prev_day_low=0
end_prev_day_low_time_cfg=0
end_prev_week_high=0
end_prev_week_high_time_cfg=0
end_prev_week_low=0
end_prev_week_low_time_cfg=0
end_prev_scope=0
end_prev_rearm_loss=0
end_prev_rearm_tp=0
end_prev_rearm_tp_kind=1
end_prev_rearm_tp_time_cfg=0
end_prev_rearm_sl=0
end_prev_rearm_sl_kind=1
end_prev_rearm_sl_time_cfg=0
models_cfg_name=models
start_cfg_name=default
end_cfg_name=default
box_cfg_name=default
time_cfg_name=default
ma_cfg_name=default
swing_cfg_name=default
obs_cfg_name=default
show_start_after=0
show_end_at=0
show_box=0
show_time=0
show_obs=0
show_fvg_direction=0
show_models=0
box_count=1
box_active=0
box_0_show=0
box_0_from_h=0
box_0_from_m=0
box_0_to_h=23
box_0_to_m=59
box_0_confirm_tf=1
box_0_confirm_mode=1
box_0_flip=0
box_0_session_mode=0
box_0_life_on=0
box_0_life_min=0
time_count=1
time_active=0
time_0_start_on=0
time_0_start_h=0
time_0_start_m=0
time_0_end_on=0
time_0_end_h=23
time_0_end_m=59
daily_close_on=0
daily_close_h=23
daily_close_m=59
friday_close_on=0
friday_close_h=23
friday_close_m=59
weekday_mon_on=1
weekday_tue_on=1
weekday_wed_on=1
weekday_thu_on=1
weekday_fri_on=1
weekday_sat_on=1
weekday_sun_on=1
model_stat_count=0

AI REFERENCE

Complete serializer examples for reference

plan-agent-trend-ma.cfg

pack_version=2
pack_label=models
history_depth=240
between_models_on=0
between_models_minutes=1
model_total=1
model_0_kind=6
model_0_show=0
model_0_on=1
model_0_tf=5
model_0_user_label=cfg_ma
model_0_cfg_name=cfg_ma
model_0_basic_cfg_name=basic_ma
model_0_be_enabled=0
model_0_be_trigger=0.8000
model_0_be_offset=0.1000
model_0_min_sl_on=0
model_0_min_sl_pts=0
model_0_max_sl_on=0
model_0_max_sl_pts=0
model_0_min_sl_fractal_on=0
model_0_tp_count=1
model_0_tp1_plan_tp=0
model_0_tp_rr_0=3.0000
model_0_tp_volume_pct_0=100.0
model_0_field_74=0.2500
model_0_field_60=20.0000
model_0_field_61=50.0000
model_0_field_62=1.0000
model_0_field_63=0.0000
model_0_field_80=1
model_0_field_78=2.0000
model_0_field_79=3.0000
model_0_field_67=1.0000
model_0_field_68=0.8000
model_0_field_69=0.1000
model_0_field_70=0
model_0_field_71=0.0000
model_0_field_72=0
model_0_field_73=0.0000
model_0_field_86=0
model_0_field_87=1
model_0_field_88=0
model_0_field_89=1.0000
model_0_field_101=0
model_0_field_102=0.0000
model_0_field_104=0
model_0_field_105=0.5000
model_0_field_106=0
model_0_field_107=1.0000
model_0_field_108=0
model_0_field_109=3.0000
model_0_field_110=15.0000
model_0_field_112=0
model_0_field_99=0
model_0_field_100=1.0000
schema_first_count=0
schema_then_count=0
plan_version=1
plan_label=agent-trend-ma
plan_enabled=1
risk_mode=0
risk_value=0.500000
risk_value_base=0.500000
logic_mode=0
direction_mode=3
direction_fvg_schema=1
direction_fvg_tf=15
direction_fvg_bpr=0
direction_fvg_longs=1
direction_fvg_shorts=1
direction_fvg_respect_tf=0
direction_fvg_show=0
direction_obs_tf1_on=0
direction_obs_tf1=15
direction_obs_tf2_on=0
direction_obs_tf2=1
direction_obs_tf3_on=0
direction_obs_tf3=16385
direction_obs_body_factor_on=0
direction_obs_body_factor=1.0000
direction_obs_sweep_rule=0
direction_obs_wick_rule=0
direction_obs_avg_body_rule=0
direction_obs_show=0
direction_obs_change_dir_on_break=0
direction_ma_tf=15
direction_ma_fast=20
direction_ma_slow=50
direction_ma_method=1
direction_ma_price=0
direction_ma_longs=1
direction_ma_shorts=1
direction_ma_distance_on=0
direction_ma_distance_points=0
direction_ma_distance_auto=1
direction_ma_show=0
direction_box_show=0
direction_swing_tf1_on=1
direction_swing_tf1=16385
direction_swing_tf2_on=0
direction_swing_tf2=15
direction_swing_tf3_on=0
direction_swing_tf3=5
direction_swing_type=2
direction_swing_mode=3
direction_swing_structure_type=1
direction_swing_break_mode=2
direction_swing_dir_count=1
direction_swing_show=0
direction_swing_tf1_show=0
direction_swing_tf2_show=0
direction_swing_tf3_show=0
entry=0.0000000000
stop=0.0000000000
take=0.0000000000
cond_start=0
cond_struct=0
start_struct_long=0
cond_pd=0
cond_imbalance=0
cond_start_obsorbation=0
start_obs_tf=15
start_obs_sweep_rule=0
start_obs_wick_rule=0
start_obs_avg_body_rule=0
start_obs_body_factor_on=0
start_obs_body_factor=1.0000
start_obs_change_dir_on_break=0
cond_start_fractal_raid=0
start_fractal_tf=15
start_fractal_mode=3
start_fractal_term=0
start_fractal_rule=0
start_fractal_lifetime_unit=0
start_fractal_lifetime_value=1
start_fractal_actuality_unit=0
start_fractal_actuality_value=1
cond_ma=0
cond_start_time=0
cond_time=0
start_struct_tf=16385
start_struct_type=1
start_struct_mode=5
start_struct_structure_type=1
start_struct_break_mode=2
start_struct_dir_count=1
start_pd_tf=16385
start_imbalance_tf=15
start_imbalance_rearm_tf=16385
start_imbalance_rearm_type=1
start_imbalance_rearm_mode=5
start_imbalance_rearm_structure_type=1
start_imbalance_rearm_break_mode=2
start_imbalance_rearm_dir_count=1
start_imbalance_rearm_pd_only=0
start_prev_day_high=0
start_prev_day_high_time_cfg=0
start_prev_day_low=0
start_prev_day_low_time_cfg=0
start_prev_week_high=0
start_prev_week_high_time_cfg=0
start_prev_week_low=0
start_prev_week_low_time_cfg=0
start_prev_weekday_level=0
start_prev_weekday_level_time_cfg=0
start_prev_weekday_day=1
start_prev_weekday_high=1
start_prev_levels_one_of=0
start_ma_tf=15
start_ma_fast=20
start_ma_slow=50
start_ma_method=1
start_ma_price=0
start_ma_longs=1
start_ma_shorts=1
start_ma_distance_on=0
start_ma_distance_points=0
start_ma_distance_auto=1
start_vis_show=0
end_vis_show=0
time_vis_show=1
start_time_h=0
start_time_m=0
cond_tp=0
cond_sl=0
cond_max=1
cond_end_time=0
end_time_h=23
end_time_m=59
end_prev_day_high=0
end_prev_day_high_time_cfg=0
end_prev_day_low=0
end_prev_day_low_time_cfg=0
end_prev_week_high=0
end_prev_week_high_time_cfg=0
end_prev_week_low=0
end_prev_week_low_time_cfg=0
end_prev_scope=0
end_prev_rearm_loss=0
end_prev_rearm_tp=0
end_prev_rearm_tp_kind=1
end_prev_rearm_tp_time_cfg=0
end_prev_rearm_sl=0
end_prev_rearm_sl_kind=1
end_prev_rearm_sl_time_cfg=0
models_cfg_name=models
start_cfg_name=default
end_cfg_name=default
box_cfg_name=default
time_cfg_name=default
ma_cfg_name=default
swing_cfg_name=default
obs_cfg_name=default
show_start_after=0
show_end_at=0
show_box=0
show_time=0
show_obs=0
show_fvg_direction=0
show_models=0
box_count=1
box_active=0
box_0_show=0
box_0_from_h=0
box_0_from_m=0
box_0_to_h=23
box_0_to_m=59
box_0_confirm_tf=1
box_0_confirm_mode=1
box_0_flip=0
box_0_session_mode=0
box_0_life_on=0
box_0_life_min=0
time_count=1
time_active=0
time_0_start_on=0
time_0_start_h=0
time_0_start_m=0
time_0_end_on=0
time_0_end_h=23
time_0_end_m=59
daily_close_on=0
daily_close_h=23
daily_close_m=59
friday_close_on=0
friday_close_h=23
friday_close_m=59
weekday_mon_on=1
weekday_tue_on=1
weekday_wed_on=1
weekday_thu_on=1
weekday_fri_on=1
weekday_sat_on=1
weekday_sun_on=1
model_stat_count=0

plan-agent-first-then.cfg

pack_version=2
pack_label=models
history_depth=240
between_models_on=1
between_models_minutes=15
model_total=2
model_0_kind=1
model_0_show=0
model_0_on=1
model_0_tf=5
model_0_user_label=cfg_trb
model_0_cfg_name=cfg_trb
model_0_basic_cfg_name=basic_trb
model_0_be_enabled=0
model_0_be_trigger=0.8000
model_0_be_offset=0.1000
model_0_min_sl_on=0
model_0_min_sl_pts=0
model_0_max_sl_on=0
model_0_max_sl_pts=0
model_0_min_sl_fractal_on=0
model_0_tp_count=1
model_0_tp1_plan_tp=0
model_0_tp_rr_0=3.0000
model_0_tp_volume_pct_0=100.0
model_0_field_74=0.2500
model_0_field_1=1.0000
model_0_field_16=3.0000
model_0_field_17=5.0000
model_0_field_2=1.0000
model_0_field_3=0.8000
model_0_field_8=1.0000
model_0_field_10=120.0000
model_0_field_13=1.0000
model_0_field_14=0.8000
model_0_field_15=0.1000
model_0_field_70=0
model_0_field_71=0.0000
model_0_field_72=0
model_0_field_73=0.0000
model_0_field_86=0
model_0_field_87=1
model_0_field_88=0
model_0_field_89=1.0000
model_0_field_101=0
model_0_field_102=0.0000
model_0_field_104=0
model_0_field_105=0.5000
model_0_field_106=0
model_0_field_107=1.0000
model_0_field_108=0
model_0_field_109=3.0000
model_0_field_110=15.0000
model_0_field_112=0
model_0_field_99=0
model_0_field_100=1.0000
model_1_kind=3
model_1_show=0
model_1_on=1
model_1_tf=5
model_1_user_label=cfg_dr
model_1_cfg_name=cfg_dr
model_1_basic_cfg_name=basic_dr
model_1_be_enabled=0
model_1_be_trigger=0.8000
model_1_be_offset=0.1000
model_1_min_sl_on=0
model_1_min_sl_pts=0
model_1_max_sl_on=0
model_1_max_sl_pts=0
model_1_min_sl_fractal_on=0
model_1_tp_count=1
model_1_tp1_plan_tp=0
model_1_tp_rr_0=3.0000
model_1_tp_volume_pct_0=100.0
model_1_field_74=0.2500
model_1_field_113=1.0000
model_1_field_114=2.0000
model_1_field_115=1.0000
model_1_field_81=2.0000
model_1_field_82=3.0000
model_1_field_33=1.0000
model_1_field_34=1.1000
model_1_field_32=1.5000
model_1_field_83=0
model_1_field_35=0.8000
model_1_field_36=0.1000
model_1_field_70=0
model_1_field_71=0.0000
model_1_field_72=0
model_1_field_73=0.0000
model_1_field_86=0
model_1_field_87=1
model_1_field_88=0
model_1_field_89=1.0000
model_1_field_101=0
model_1_field_102=0.0000
model_1_field_104=0
model_1_field_105=0.5000
model_1_field_106=0
model_1_field_107=1.0000
model_1_field_108=0
model_1_field_109=3.0000
model_1_field_110=15.0000
model_1_field_112=0
model_1_field_99=0
model_1_field_100=1.0000
schema_first_count=1
schema_first_kind_0=1
schema_first_idx_0=0
schema_then_count=1
schema_then_kind_0=3
schema_then_idx_0=0
plan_version=1
plan_label=agent-first-then
plan_enabled=1
risk_mode=0
risk_value=0.500000
risk_value_base=0.500000
logic_mode=0
direction_mode=0
direction_fvg_schema=1
direction_fvg_tf=15
direction_fvg_bpr=0
direction_fvg_longs=1
direction_fvg_shorts=1
direction_fvg_respect_tf=0
direction_fvg_show=0
direction_obs_tf1_on=0
direction_obs_tf1=15
direction_obs_tf2_on=0
direction_obs_tf2=1
direction_obs_tf3_on=0
direction_obs_tf3=16385
direction_obs_body_factor_on=0
direction_obs_body_factor=1.0000
direction_obs_sweep_rule=0
direction_obs_wick_rule=0
direction_obs_avg_body_rule=0
direction_obs_show=0
direction_obs_change_dir_on_break=0
direction_ma_tf=15
direction_ma_fast=20
direction_ma_slow=50
direction_ma_method=1
direction_ma_price=0
direction_ma_longs=1
direction_ma_shorts=1
direction_ma_distance_on=0
direction_ma_distance_points=0
direction_ma_distance_auto=1
direction_ma_show=0
direction_box_show=0
direction_swing_tf1_on=1
direction_swing_tf1=16385
direction_swing_tf2_on=0
direction_swing_tf2=15
direction_swing_tf3_on=0
direction_swing_tf3=5
direction_swing_type=2
direction_swing_mode=3
direction_swing_structure_type=1
direction_swing_break_mode=2
direction_swing_dir_count=1
direction_swing_show=0
direction_swing_tf1_show=0
direction_swing_tf2_show=0
direction_swing_tf3_show=0
entry=0.0000000000
stop=0.0000000000
take=0.0000000000
cond_start=0
cond_struct=0
start_struct_long=0
cond_pd=0
cond_imbalance=0
cond_start_obsorbation=0
start_obs_tf=15
start_obs_sweep_rule=0
start_obs_wick_rule=0
start_obs_avg_body_rule=0
start_obs_body_factor_on=0
start_obs_body_factor=1.0000
start_obs_change_dir_on_break=0
cond_start_fractal_raid=0
start_fractal_tf=15
start_fractal_mode=3
start_fractal_term=0
start_fractal_rule=0
start_fractal_lifetime_unit=0
start_fractal_lifetime_value=1
start_fractal_actuality_unit=0
start_fractal_actuality_value=1
cond_ma=0
cond_start_time=0
cond_time=0
start_struct_tf=16385
start_struct_type=1
start_struct_mode=5
start_struct_structure_type=1
start_struct_break_mode=2
start_struct_dir_count=1
start_pd_tf=16385
start_imbalance_tf=15
start_imbalance_rearm_tf=16385
start_imbalance_rearm_type=1
start_imbalance_rearm_mode=5
start_imbalance_rearm_structure_type=1
start_imbalance_rearm_break_mode=2
start_imbalance_rearm_dir_count=1
start_imbalance_rearm_pd_only=0
start_prev_day_high=0
start_prev_day_high_time_cfg=0
start_prev_day_low=0
start_prev_day_low_time_cfg=0
start_prev_week_high=0
start_prev_week_high_time_cfg=0
start_prev_week_low=0
start_prev_week_low_time_cfg=0
start_prev_weekday_level=0
start_prev_weekday_level_time_cfg=0
start_prev_weekday_day=1
start_prev_weekday_high=1
start_prev_levels_one_of=0
start_ma_tf=15
start_ma_fast=20
start_ma_slow=50
start_ma_method=1
start_ma_price=0
start_ma_longs=1
start_ma_shorts=1
start_ma_distance_on=0
start_ma_distance_points=0
start_ma_distance_auto=1
start_vis_show=0
end_vis_show=0
time_vis_show=1
start_time_h=0
start_time_m=0
cond_tp=0
cond_sl=0
cond_max=1
cond_end_time=0
end_time_h=23
end_time_m=59
end_prev_day_high=0
end_prev_day_high_time_cfg=0
end_prev_day_low=0
end_prev_day_low_time_cfg=0
end_prev_week_high=0
end_prev_week_high_time_cfg=0
end_prev_week_low=0
end_prev_week_low_time_cfg=0
end_prev_scope=0
end_prev_rearm_loss=0
end_prev_rearm_tp=0
end_prev_rearm_tp_kind=1
end_prev_rearm_tp_time_cfg=0
end_prev_rearm_sl=0
end_prev_rearm_sl_kind=1
end_prev_rearm_sl_time_cfg=0
models_cfg_name=models
start_cfg_name=default
end_cfg_name=default
box_cfg_name=default
time_cfg_name=default
ma_cfg_name=default
swing_cfg_name=default
obs_cfg_name=default
show_start_after=0
show_end_at=0
show_box=0
show_time=0
show_obs=0
show_fvg_direction=0
show_models=0
box_count=1
box_active=0
box_0_show=0
box_0_from_h=0
box_0_from_m=0
box_0_to_h=23
box_0_to_m=59
box_0_confirm_tf=1
box_0_confirm_mode=1
box_0_flip=0
box_0_session_mode=0
box_0_life_on=0
box_0_life_min=0
time_count=1
time_active=0
time_0_start_on=0
time_0_start_h=0
time_0_start_m=0
time_0_end_on=0
time_0_end_h=23
time_0_end_m=59
daily_close_on=0
daily_close_h=23
daily_close_m=59
friday_close_on=0
friday_close_h=23
friday_close_m=59
weekday_mon_on=1
weekday_tue_on=1
weekday_wed_on=1
weekday_thu_on=1
weekday_fri_on=1
weekday_sat_on=1
weekday_sun_on=1
model_stat_count=0

plan-agent-market-manual.cfg

pack_version=2
pack_label=models
history_depth=240
between_models_on=0
between_models_minutes=1
model_total=1
model_0_kind=8
model_0_instance_id=1032547698badcfe0123456789abcdef
model_0_show=0
model_0_on=1
model_0_tf=1
model_0_user_label=cfg_market
model_0_cfg_name=cfg_market
model_0_basic_cfg_name=basic_market
model_0_be_enabled=0
model_0_be_trigger=0.8000
model_0_be_offset=0.1000
model_0_min_sl_on=0
model_0_min_sl_pts=0
model_0_max_sl_on=0
model_0_max_sl_pts=0
model_0_min_sl_fractal_on=0
model_0_tp_count=1
model_0_tp1_plan_tp=0
model_0_tp_rr_0=1.0000
model_0_tp_volume_pct_0=100.0
model_0_field_119=0
model_0_field_120=2
model_0_field_121=3
model_0_field_122=1
model_0_field_123=0
model_0_field_124=1
model_0_field_125=0
model_0_field_126=0
model_0_field_127=1
model_0_field_128=0
model_0_field_129=0.8000
model_0_field_130=0.1000
model_0_field_131=1
model_0_field_132=1.0000
model_0_field_133=100.0
model_0_field_134=0
model_0_field_135=1.0000
schema_first_count=0
schema_then_count=0
plan_version=1
plan_label=agent-market-manual
plan_enabled=1
risk_mode=0
risk_value=0.250000
risk_value_base=0.250000
logic_mode=0
direction_mode=-1
direction_fvg_schema=1
direction_fvg_tf=15
direction_fvg_bpr=0
direction_fvg_longs=1
direction_fvg_shorts=1
direction_fvg_respect_tf=0
direction_fvg_show=0
direction_obs_tf1_on=0
direction_obs_tf1=15
direction_obs_tf2_on=0
direction_obs_tf2=1
direction_obs_tf3_on=0
direction_obs_tf3=16385
direction_obs_body_factor_on=0
direction_obs_body_factor=1.0000
direction_obs_sweep_rule=0
direction_obs_wick_rule=0
direction_obs_avg_body_rule=0
direction_obs_show=0
direction_obs_change_dir_on_break=0
direction_ma_tf=15
direction_ma_fast=20
direction_ma_slow=50
direction_ma_method=1
direction_ma_price=0
direction_ma_longs=1
direction_ma_shorts=1
direction_ma_distance_on=0
direction_ma_distance_points=0
direction_ma_distance_auto=1
direction_ma_show=0
direction_box_show=0
direction_swing_tf1_on=1
direction_swing_tf1=16385
direction_swing_tf2_on=0
direction_swing_tf2=15
direction_swing_tf3_on=0
direction_swing_tf3=5
direction_swing_type=2
direction_swing_mode=3
direction_swing_structure_type=1
direction_swing_break_mode=2
direction_swing_dir_count=1
direction_swing_show=0
direction_swing_tf1_show=0
direction_swing_tf2_show=0
direction_swing_tf3_show=0
entry=0.0000000000
stop=0.0000000000
take=0.0000000000
cond_start=0
cond_struct=0
start_struct_long=0
cond_pd=0
cond_imbalance=0
cond_start_obsorbation=0
start_obs_tf=15
start_obs_sweep_rule=0
start_obs_wick_rule=0
start_obs_avg_body_rule=0
start_obs_body_factor_on=0
start_obs_body_factor=1.0000
start_obs_change_dir_on_break=0
cond_start_fractal_raid=0
start_fractal_tf=15
start_fractal_mode=3
start_fractal_term=0
start_fractal_rule=0
start_fractal_lifetime_unit=0
start_fractal_lifetime_value=1
start_fractal_actuality_unit=0
start_fractal_actuality_value=1
cond_ma=0
cond_start_time=0
cond_time=0
start_struct_tf=16385
start_struct_type=1
start_struct_mode=5
start_struct_structure_type=1
start_struct_break_mode=2
start_struct_dir_count=1
start_pd_tf=16385
start_imbalance_tf=15
start_imbalance_rearm_tf=16385
start_imbalance_rearm_type=1
start_imbalance_rearm_mode=5
start_imbalance_rearm_structure_type=1
start_imbalance_rearm_break_mode=2
start_imbalance_rearm_dir_count=1
start_imbalance_rearm_pd_only=0
start_prev_day_high=0
start_prev_day_high_time_cfg=0
start_prev_day_low=0
start_prev_day_low_time_cfg=0
start_prev_week_high=0
start_prev_week_high_time_cfg=0
start_prev_week_low=0
start_prev_week_low_time_cfg=0
start_prev_weekday_level=0
start_prev_weekday_level_time_cfg=0
start_prev_weekday_day=1
start_prev_weekday_high=1
start_prev_levels_one_of=0
start_ma_tf=15
start_ma_fast=20
start_ma_slow=50
start_ma_method=1
start_ma_price=0
start_ma_longs=1
start_ma_shorts=1
start_ma_distance_on=0
start_ma_distance_points=0
start_ma_distance_auto=1
start_vis_show=0
end_vis_show=0
time_vis_show=1
start_time_h=0
start_time_m=0
cond_tp=0
cond_sl=0
cond_max=1
cond_end_time=0
end_time_h=23
end_time_m=59
end_prev_day_high=0
end_prev_day_high_time_cfg=0
end_prev_day_low=0
end_prev_day_low_time_cfg=0
end_prev_week_high=0
end_prev_week_high_time_cfg=0
end_prev_week_low=0
end_prev_week_low_time_cfg=0
end_prev_scope=0
end_prev_rearm_loss=0
end_prev_rearm_tp=0
end_prev_rearm_tp_kind=1
end_prev_rearm_tp_time_cfg=0
end_prev_rearm_sl=0
end_prev_rearm_sl_kind=1
end_prev_rearm_sl_time_cfg=0
models_cfg_name=models
start_cfg_name=default
end_cfg_name=default
box_cfg_name=default
time_cfg_name=default
ma_cfg_name=default
swing_cfg_name=default
obs_cfg_name=default
show_start_after=0
show_end_at=0
show_box=0
show_time=0
show_obs=0
show_fvg_direction=0
show_models=0
box_count=1
box_active=0
box_0_show=0
box_0_from_h=0
box_0_from_m=0
box_0_to_h=23
box_0_to_m=59
box_0_confirm_tf=1
box_0_confirm_mode=1
box_0_flip=0
box_0_session_mode=0
box_0_life_on=0
box_0_life_min=0
time_count=1
time_active=0
time_0_start_on=0
time_0_start_h=0
time_0_start_m=0
time_0_end_on=0
time_0_end_h=23
time_0_end_m=59
daily_close_on=0
daily_close_h=23
daily_close_m=59
friday_close_on=0
friday_close_h=23
friday_close_m=59
weekday_mon_on=1
weekday_tue_on=1
weekday_wed_on=1
weekday_thu_on=1
weekday_fri_on=1
weekday_sat_on=1
weekday_sun_on=1
model_stat_count=0