{
"config_version": "fast_news_worthy_news_trade_engine_v3_2026_06_02",
"strategy_name": "FAST_NEWS_ONLY",
"purpose": "Analyze every incoming news item for market-moving potential, classify direction, validate trade quality, and execute only when the Fast News strategy is clear.",
"do_not_mix_with": [
"A_PLUS_CONFIRMATION"
],
"timezone": "America\/New_York",
"mode": "ANALYZE_WORTHY_NEWS_THEN_TRADE_IF_CLEAR",
"global_rules": {
"enabled": true,
"analyze_every_incoming_headline": true,
"auto_trade_enabled": true,
"paper_trade_default": true,
"live_trade_requires_explicit_flag": true,
"manual_review_if_unclear": true,
"minimum_market_impact_score_for_alert": 70,
"minimum_market_impact_score_for_trade_validation": 85,
"minimum_strategy_clarity_score_for_auto_trade": 85,
"minimum_total_trade_score_for_auto_trade": 88,
"minimum_source_reliability_for_auto_trade": 8,
"minimum_direction_confidence": 80,
"max_concurrent_fast_news_positions": 2,
"max_same_ticker_positions": 1,
"max_trades_per_day": 5,
"max_total_daily_fast_news_loss": 600,
"max_dollar_risk_per_trade": 300,
"reject_if_no_clear_direction": true,
"reject_if_news_is_stale": true,
"reject_if_duplicate_trade": true,
"reject_if_strategy_conflicts": true,
"reject_if_fast_news_and_a_plus_overlap": true,
"block_new_trade_after_daily_loss_hit": true
},
"market_session_rules": {
"regular_session": {
"enabled": true,
"start_time": "09:30:00",
"end_time": "16:00:00",
"allow_auto_trade": true
},
"premarket": {
"enabled": true,
"start_time": "04:00:00",
"end_time": "09:29:59",
"allow_auto_trade": true,
"require_option_chain_available": true,
"max_spread_percent": 15
},
"after_hours": {
"enabled": true,
"start_time": "16:00:01",
"end_time": "20:00:00",
"allow_auto_trade": false,
"learning_mode_only": true
},
"closed_or_holiday_market": {
"allow_auto_trade": false,
"learning_mode_only": true,
"reason": "U.S. options market closed or unreliable liquidity."
}
},
"news_ingestion": {
"required_fields": [
"headline",
"source",
"published_at",
"received_at",
"url"
],
"optional_fields": [
"summary",
"body",
"tickers",
"symbols_if_available",
"sector",
"asset_class",
"related_assets",
"language",
"sentiment",
"source_rank"
],
"normalize_headline": true,
"strip_duplicate_words": true,
"detect_language": true,
"translate_to_english_if_needed": true,
"store_raw_news": true,
"store_normalized_news": true,
"store_all_incoming_news_even_if_rejected": true
},
"source_reliability_scores": {
"official_company_release": 10,
"sec_filing": 10,
"fda_official": 10,
"federal_reserve_official": 9.8,
"treasury_official": 9.8,
"white_house_official": 9.8,
"court_filing": 9.5,
"reuters": 9.5,
"bloomberg": 9.4,
"dow_jones": 9.2,
"associated_press": 9.1,
"wall_street_journal": 9.1,
"cnbc": 8.5,
"marketwatch": 8,
"investors_business_daily": 8,
"barrons": 8,
"benzinga": 7.8,
"unusual_whales": 7.2,
"verified_reporter_social": 6.5,
"social_media_unknown": 3,
"reddit": 2,
"stocktwits": 2,
"unknown_source": 1
},
"worthy_news_market_impact_scanner": {
"enabled": true,
"run_before_specific_scanners": true,
"purpose": "Catch any incoming headline that can move stocks, ETFs, indexes, commodities, currencies, rates, crypto, volatility, or options even if it does not match a predefined keyword scanner.",
"analyze_every_headline": true,
"minimum_market_impact_score_for_alert": 70,
"minimum_market_impact_score_for_trade_validation": 85,
"minimum_market_impact_score_for_auto_trade": 90,
"classify_assets": [
"single_stock",
"sector_etf",
"index_etf",
"commodity",
"currency",
"rates",
"crypto",
"volatility",
"options"
],
"market_moving_event_types": [
"earnings_surprise",
"guidance_change",
"revenue_warning",
"margin_warning",
"analyst_upgrade",
"analyst_downgrade",
"price_target_change",
"ceo_resignation",
"cfo_resignation",
"executive_departure",
"accounting_issue",
"auditor_resignation",
"fraud_investigation",
"sec_investigation",
"doj_investigation",
"ftc_action",
"fda_approval",
"fda_rejection",
"clinical_trial_success",
"clinical_trial_failure",
"major_lawsuit",
"settlement",
"cyberattack",
"data_breach",
"product_recall",
"factory_shutdown",
"factory_fire",
"labor_strike",
"supply_chain_disruption",
"aircraft_incident",
"transportation_disruption",
"natural_disaster",
"tariff_announcement",
"sanctions",
"export_controls",
"import_ban",
"geopolitical_escalation",
"geopolitical_deescalation",
"war_escalation",
"ceasefire",
"oil_supply_shock",
"opec_action",
"central_bank_surprise",
"inflation_surprise",
"jobs_report_surprise",
"treasury_yield_spike",
"credit_downgrade",
"bank_liquidity_stress",
"short_seller_report",
"trading_halt",
"index_inclusion",
"index_removal",
"m_and_a",
"strategic_review",
"bankruptcy",
"restructuring",
"capital_raise",
"dilution",
"buyback",
"dividend_cut",
"dividend_increase",
"crypto_regulatory_action",
"commodity_supply_shock",
"ai_product_launch",
"ai_infrastructure_deal",
"hyperscaler_partnership",
"government_contract",
"defense_contract",
"major_customer_win",
"major_customer_loss"
],
"required_classification_output": {
"is_market_moving": "boolean",
"market_impact_score": "number_0_to_100",
"event_type": "string",
"headline_theme": "string",
"affected_assets": "array",
"primary_ticker": "string_or_null",
"sector": "string_or_null",
"expected_direction": "CALLS | PUTS | MIXED | NO_TRADE",
"direction_confidence": "number_0_to_100",
"time_sensitivity": "IMMEDIATE | FAST_CONFIRMATION | SLOW_CONFIRMATION | IGNORE",
"reason": "string"
},
"send_to_specific_scanners_if": [
"is_market_moving == true",
"market_impact_score >= 70"
],
"send_to_trade_validation_if": [
"is_market_moving == true",
"market_impact_score >= 85",
"expected_direction in ['CALLS','PUTS']",
"direction_confidence >= 80",
"source_reliability_score >= 8",
"duplicate_check == PASS",
"news_freshness_check == PASS"
],
"auto_reject_if": [
"is_market_moving == false",
"market_impact_score < 70",
"expected_direction == MIXED",
"expected_direction == NO_TRADE",
"affected_assets_empty",
"source_reliability_score < 7.5",
"duplicate_check == FAIL",
"news_age_seconds > 600"
],
"manual_review_if": [
"market_impact_score >= 70 AND market_impact_score < 85",
"direction_confidence >= 60 AND direction_confidence < 80",
"source_reliability_score >= 7.0 AND source_reliability_score < 8.0",
"affected_assets_unclear == true"
]
},
"specific_event_scanners": {
"ai_infrastructure_demand_shock": {
"enabled": true,
"keywords": [
"AI infrastructure demand",
"hyperscaler demand shock",
"data center demand surge",
"AI capex increase",
"GPU demand rebound",
"semiconductor recovery",
"chip demand recovery",
"memory demand surge",
"HBM demand",
"AI backlog expansion"
],
"tickers": [
"NVDA",
"AMD",
"AVGO",
"MU",
"MRVL",
"INTC",
"SMH",
"SOXX",
"SMCI"
],
"default_direction": "CALLS",
"severity_boost": 2.8,
"minimum_severity": 8.5
},
"panic_washout_reversal": {
"enabled": true,
"keywords": [
"panic selling",
"washout",
"capitulation",
"oversold bounce",
"rebound after selloff",
"recovery rally",
"short covering",
"sympathy rebound",
"sector rebound",
"dead cat bounce"
],
"tickers": [
"INTC",
"AMD",
"MU",
"MRVL",
"NVDA",
"SMH",
"SOXX",
"QQQ",
"SPY"
],
"default_direction": "CALLS",
"severity_boost": 2.5,
"minimum_severity": 8.3
},
"ai_infrastructure_earnings": {
"enabled": true,
"keywords": [
"AI server demand",
"AI infrastructure",
"data center growth",
"AI networking",
"custom AI chips",
"raised guidance",
"AI backlog",
"hyperscaler demand",
"GPU server",
"AI revenue beat"
],
"tickers": [
"DELL",
"HPE",
"SMCI",
"MRVL",
"ANET",
"NTAP",
"AVGO",
"NVDA"
],
"default_direction": "CALLS",
"severity_boost": 2.5,
"minimum_severity": 8.7
},
"ai_product_launch": {
"enabled": true,
"keywords": [
"AI chip",
"AI PC",
"AI platform",
"AI device",
"AI operating system",
"AI partnership",
"AI product launch",
"new AI processor"
],
"tickers": [
"NVDA",
"AMD",
"MSFT",
"INTC",
"QCOM",
"AAPL",
"GOOGL"
],
"default_direction": "CALLS",
"severity_boost": 2,
"minimum_severity": 8.5
},
"enterprise_ai_deployment": {
"enabled": true,
"keywords": [
"AWS partnership",
"Microsoft Azure partnership",
"Google Cloud partnership",
"enterprise AI deployment",
"AI monetization",
"AI SaaS acceleration",
"cloud AI expansion",
"hyperscaler agreement"
],
"tickers": [
"SNOW",
"CRM",
"NOW",
"MSFT",
"GOOGL",
"AMZN",
"ORCL",
"DDOG"
],
"default_direction": "CALLS",
"severity_boost": 2.3,
"minimum_severity": 8.8
},
"software_guidance_collapse": {
"enabled": true,
"keywords": [
"weak guidance",
"cuts forecast",
"lowers outlook",
"customer slowdown",
"software spending slowdown",
"cybersecurity slowdown",
"margin pressure",
"sales deceleration",
"cloud spending deterioration"
],
"tickers": [
"ZS",
"CRWD",
"PANW",
"OKTA",
"DDOG",
"SNOW",
"CRM",
"NOW"
],
"default_direction": "PUTS",
"severity_boost": 2.5,
"minimum_severity": 8.8
},
"commercial_infrastructure_partnership": {
"enabled": true,
"keywords": [
"Starlink",
"satellite internet",
"airline connectivity",
"commercial deployment",
"fleet rollout",
"telecom partnership",
"transportation technology integration",
"inflight internet"
],
"tickers": [
"AAL",
"DAL",
"UAL",
"LUV",
"TMUS",
"VZ",
"T",
"ASTS"
],
"default_direction": "CALLS",
"severity_boost": 2.2,
"minimum_severity": 8.6
},
"energy_geopolitical": {
"enabled": true,
"keywords": [
"Iran",
"Israel",
"Hormuz",
"OPEC",
"oil supply",
"crude",
"missile strike",
"ceasefire",
"peace deal",
"sanctions",
"shipping lane"
],
"tickers": [
"XLE",
"XOM",
"CVX",
"OXY",
"USO"
],
"requires_direction_classifier": true,
"minimum_severity": 8.5
},
"regulatory_shock": {
"enabled": true,
"keywords": [
"FDA approval",
"FDA rejection",
"clinical hold",
"SEC investigation",
"DOJ investigation",
"FTC lawsuit",
"China regulatory crackdown",
"export restriction",
"ban",
"delisting risk"
],
"default_direction": "CLASSIFY_FROM_CONTEXT",
"severity_boost": 2,
"minimum_severity": 8.7
},
"m_and_a_corporate_action": {
"enabled": true,
"keywords": [
"acquisition talks",
"merger talks",
"deal terminated",
"strategic review",
"exploring sale",
"takeover bid",
"private equity interest",
"activist investor"
],
"default_direction": "CLASSIFY_FROM_CONTEXT",
"severity_boost": 2.1,
"minimum_severity": 8.5
},
"capital_raise_or_dilution": {
"enabled": true,
"keywords": [
"equity raise",
"share offering",
"secondary offering",
"convertible notes",
"debt raise",
"AI capex financing",
"capital raise",
"dilution"
],
"classification_rules": {
"equity_raise": "PUTS_OR_NO_TRADE",
"share_offering": "PUTS_OR_NO_TRADE",
"convertible_notes": "MIXED_REVIEW",
"debt_raise": "NEUTRAL_OR_REVIEW",
"capex_guidance_without_dilution": "CALLS_IF_CONFIRMED"
},
"severity_boost": 1.7,
"minimum_severity": 8
},
"leadership_accounting_or_fraud": {
"enabled": true,
"keywords": [
"CEO resigns",
"CFO resigns",
"auditor resigns",
"accounting issue",
"restatement",
"fraud",
"internal investigation",
"material weakness"
],
"default_direction": "PUTS",
"severity_boost": 2.4,
"minimum_severity": 8.6
},
"cyberattack_or_data_breach": {
"enabled": true,
"keywords": [
"cyberattack",
"data breach",
"ransomware",
"system outage",
"customer data exposed",
"security incident"
],
"default_direction": "PUTS",
"severity_boost": 2.2,
"minimum_severity": 8.4
},
"short_seller_report": {
"enabled": true,
"keywords": [
"short seller report",
"Hindenburg",
"Muddy Waters",
"Citron",
"fraud allegations",
"research report alleges"
],
"default_direction": "PUTS",
"severity_boost": 2.5,
"minimum_severity": 8.5
}
},
"energy_direction_classifier": {
"enabled": true,
"critical_rule": "Never map oil, Iran, or Hormuz headlines directly to XLE calls without direction classification.",
"bullish_energy_triggers": [
"oil supply shock",
"confirmed Strait of Hormuz closure",
"Iran escalation",
"Israel escalation",
"missile attack on oil infrastructure",
"tanker attack",
"OPEC surprise production cut",
"major refinery outage",
"sanctions tightening",
"crude spike greater than 1.5 percent in 10 minutes",
"talks collapse",
"communications breakdown"
],
"bearish_energy_triggers": [
"ceasefire",
"peace deal",
"U.S.-Iran agreement",
"deal optimism",
"shipping lane reopening",
"Strait of Hormuz reopening",
"sanctions relief",
"oil supply increasing",
"crude prices falling",
"truce extension"
],
"xle_calls_allowed_only_if": [
"headline_direction == BULLISH_ENERGY",
"crude_direction == UP",
"XLE_1m_change_percent >= 0.20",
"XLE_above_vwap == true",
"option_premium_acceleration == POSITIVE",
"spread_percent <= 12",
"duplicate_check == PASS"
],
"xle_puts_allowed_only_if": [
"headline_direction == BEARISH_ENERGY",
"crude_direction == DOWN",
"XLE_1m_change_percent <= -0.20",
"XLE_below_vwap == true",
"put_premium_acceleration == POSITIVE",
"spread_percent <= 12",
"duplicate_check == PASS"
],
"reject_xle_calls_if": [
"headline_direction == BEARISH_ENERGY",
"crude_direction == DOWN",
"XLE_red_intraday == true",
"same_event_duplicate == true",
"strategy_clarity_score < 85"
]
},
"duplicate_news_logic": {
"enabled": true,
"duplicate_key_fields": [
"event_date",
"trading_session",
"source_cluster",
"headline_theme",
"primary_ticker",
"expected_direction",
"severity_bucket"
],
"same_day_duplicate_window_minutes": 20,
"suppress_same_event_same_direction": true,
"same_event_action": "SUPPRESS_OR_CONFIDENCE_BOOST_ONLY",
"do_not_create_second_trade": true,
"new_event_allowed_if": [
"new_trading_day",
"new_trading_session",
"material_escalation",
"official_confirmation_after_rumor",
"opposite_direction_update",
"new_attack_or_retaliation",
"new_guidance_change",
"new_contract_confirmation",
"new_regulatory_action",
"new_price_breakout_after_consolidation"
],
"duplicate_reject_reasons": [
"same_headline_theme",
"same_ticker",
"same_direction",
"same_session",
"inside_duplicate_window",
"no_material_new_detail"
]
},
"trade_validation_pipeline": {
"must_pass_all_for_auto_trade": [
"worthy_news_market_impact_check",
"news_freshness_check",
"source_reliability_check",
"duplicate_check",
"direction_classification_check",
"ticker_mapping_check",
"underlying_reaction_check",
"options_chain_check",
"premium_acceleration_check",
"spread_check",
"liquidity_check",
"slippage_check",
"risk_check",
"strategy_clarity_check",
"existing_position_check",
"stop_monitor_availability_check"
],
"news_freshness_check": {
"max_news_age_seconds_for_auto_trade": 180,
"max_news_age_seconds_for_manual_alert": 600,
"reject_if_received_after_major_move_without_premium_replay": true
},
"direction_classification_check": {
"required": true,
"minimum_direction_confidence": 80,
"reject_if_mixed_or_unclear": true,
"valid_directions": [
"CALLS",
"PUTS",
"NO_TRADE",
"WATCHLIST_ONLY"
]
},
"ticker_mapping_check": {
"required": true,
"prefer_direct_ticker_over_sector_etf": true,
"allow_sector_etf_only_if_primary_ticker_unclear": true,
"reject_if_ticker_liquidity_poor": true
},
"underlying_reaction_check": {
"required": true,
"confirmation_windows_seconds": [
15,
30,
60,
120
],
"calls_require": {
"price_change_1m_percent_min": 0.2,
"price_above_vwap": true,
"volume_relative_min": 1.5,
"green_candle_confirmation": true
},
"puts_require": {
"price_change_1m_percent_max": -0.2,
"price_below_vwap": true,
"volume_relative_min": 1.5,
"red_candle_confirmation": true
},
"reject_if_underlying_disagrees_with_news": true
},
"options_chain_check": {
"required": true,
"expiration_preference": [
"same_week",
"next_week"
],
"minimum_open_interest": 100,
"minimum_volume": 50,
"minimum_bid": 0.2,
"avoid_contracts_with_zero_bid": true,
"prefer_delta_range": {
"min": 0.35,
"max": 0.65
},
"max_contract_price": 8
},
"premium_acceleration_check": {
"required": true,
"premium_snapshots_seconds": [
3,
10,
30,
60,
90
],
"calls_require_premium_acceleration_positive": true,
"puts_require_premium_acceleration_positive": true,
"ideal_premium_expansion_before_entry_percent": 20,
"max_premium_expansion_before_entry_percent": 120,
"reject_if_premium_already_exploded_and_underlying_not_accelerating": true
},
"spread_check": {
"required": true,
"max_spread_percent_regular_session": 12,
"max_spread_percent_premarket": 15,
"max_spread_percent_high_liquidity_exception": 18,
"reject_if_spread_wider_than_max": true
},
"slippage_check": {
"required": true,
"max_expected_slippage_percent": 8,
"max_fees_plus_slippage_percent_of_expected_profit": 25,
"reject_if_friction_too_high": true
},
"strategy_clarity_check": {
"required": true,
"score_components": {
"market_impact_score": 15,
"source_reliability": 15,
"headline_direction_clarity": 20,
"ticker_mapping_clarity": 10,
"underlying_reaction_alignment": 20,
"option_premium_alignment": 10,
"spread_and_liquidity_quality": 5,
"duplicate_status": 5
},
"minimum_score_for_auto_trade": 85,
"score_below_70_action": "REJECT",
"score_70_to_84_action": "MANUAL_REVIEW",
"score_85_plus_action": "ALLOW_IF_TOTAL_SCORE_PASSES"
}
},
"trade_scoring": {
"total_score_required_for_auto_trade": 88,
"score_weights": {
"market_impact_score": 15,
"news_severity": 15,
"source_reliability": 15,
"direction_confidence": 15,
"reaction_confirmation": 15,
"premium_acceleration": 10,
"spread_quality": 5,
"liquidity_quality": 5,
"latency_quality": 3,
"duplicate_cleanliness": 2
},
"automatic_reject_conditions": [
"market_impact_score_below_85",
"duplicate_check_failed",
"direction_confidence_below_80",
"strategy_clarity_below_85",
"source_reliability_below_8_for_auto_trade",
"headline_stale",
"underlying_reaction_disagrees",
"premium_missing",
"spread_missing",
"spread_too_wide",
"existing_position_same_ticker",
"daily_loss_limit_hit",
"market_closed",
"stop_monitor_not_available"
]
},
"order_execution": {
"enabled": true,
"broker": "Tradier",
"order_type": "LIMIT",
"allowed_order_actions": [
"BUY_TO_OPEN"
],
"blocked_order_actions": [
"SELL_SHORT_OPTIONS",
"NAKED_OPTIONS",
"MARKET_ORDER_OPTIONS"
],
"entry_price_logic": {
"default": "mid_price_plus_small_offset",
"max_chase_percent": 5,
"cancel_if_not_filled_seconds": 8,
"do_not_market_order_options": true
},
"position_sizing": {
"default_contracts": 1,
"max_contracts": 2,
"increase_to_2_contracts_only_if_total_score_above": 94
},
"pre_execution_required_log_fields": [
"signal_id",
"news_id",
"headline",
"source",
"published_at",
"received_at",
"market_impact_score",
"strategy_bucket",
"ticker",
"option_symbol",
"direction",
"total_score",
"strategy_clarity_score",
"severity_score",
"source_reliability_score",
"duplicate_key",
"duplicate_result",
"underlying_price",
"underlying_1m_change",
"vwap_status",
"bid",
"ask",
"mid",
"spread_percent",
"premium_acceleration",
"reason_trade_allowed"
]
},
"post_fill_monitoring": {
"required": true,
"start_monitor_within_seconds": 5,
"if_monitor_not_started_action": "FLATTEN_OR_ALERT_IMMEDIATELY",
"stop_loss": {
"enabled": true,
"type": "premium_percent_loss",
"max_loss_percent": 20,
"action": "SELL_TO_CLOSE",
"do_not_disable": true
},
"take_profit": {
"enabled": true,
"scale_out_rules": [
{
"profit_percent": 25,
"action": "consider_partial_or_tighten_stop"
},
{
"profit_percent": 50,
"action": "take_partial_profit_or_trail"
},
{
"profit_percent": 100,
"action": "take_profit_or_aggressive_trail"
}
]
},
"trailing_stop": {
"enabled": true,
"activate_after_profit_percent": 25,
"trail_by_percent": 15
},
"time_stop": {
"enabled": true,
"exit_if_no_follow_through_minutes": 7,
"exit_if_premium_flat_or_down_after_entry": true
},
"exit_if_news_reverses": true,
"exit_if_underlying_loses_vwap": true,
"exit_if_spread_explodes_percent": 25,
"required_monitor_fields": [
"position_id",
"order_id",
"option_symbol",
"entry_fill_price",
"current_bid",
"current_ask",
"current_mid",
"premium_change_percent",
"underlying_price",
"vwap_status",
"stop_loss_price",
"highest_premium_seen",
"trailing_stop_price",
"exit_reason"
]
},
"learning_engine": {
"enabled": true,
"run_after_market_close": true,
"store_all_news": true,
"store_rejected_events": true,
"store_missed_events": true,
"store_selected_events": true,
"store_duplicate_events": true,
"store_late_events": true,
"compare_news_to_market_reaction": true,
"compare_rejected_to_actual_move": true,
"compare_selected_to_actual_pnl": true,
"update_scanner_weights_daily": true,
"fields_to_log": [
"date",
"event_id",
"news_timestamp",
"received_timestamp",
"source",
"source_reliability",
"market_impact_score",
"duplicate_status",
"stale_status",
"headline_theme",
"affected_tickers",
"sector",
"expected_direction",
"actual_direction",
"severity_score",
"strategy_clarity_score",
"reaction_timing_seconds",
"underlying_move_1m",
"underlying_move_5m",
"underlying_move_15m",
"option_premium_3s",
"option_premium_10s",
"option_premium_30s",
"option_premium_60s",
"spread_percent",
"slippage_estimate",
"fees",
"entry_price",
"exit_price",
"gross_pnl",
"net_pnl",
"reject_reason",
"lesson_learned"
],
"missed_trade_detection": {
"enabled": true,
"detect_if_stock_moved_after_rejected_news": true,
"missed_threshold_underlying_move_percent": 3,
"missed_threshold_option_move_percent": 40,
"flag_scanner_gap_if_no_alert_created": true,
"flag_premium_gap_if_alert_created_but_no_premium_data": true,
"flag_direction_error_if_trade_direction_opposite_actual_move": true
}
},
"api_decision_output_schema": {
"required_output": {
"signal_id": "string",
"action": "ENTER_TRADE | REJECT | MANUAL_REVIEW | WATCHLIST_ONLY",
"strategy": "FAST_NEWS_ONLY",
"ticker": "string_or_null",
"option_symbol": "string_or_null",
"direction": "CALLS | PUTS | NO_TRADE",
"headline_theme": "string",
"event_type": "string",
"source": "string",
"source_reliability_score": "number",
"market_impact_score": "number",
"severity_score": "number",
"direction_confidence": "number",
"strategy_clarity_score": "number",
"total_trade_score": "number",
"duplicate_status": "PASS | FAIL | CONFIDENCE_BOOST_ONLY",
"stale_status": "FRESH | STALE | LATE",
"expected_direction": "string",
"actual_reaction": "string",
"reason": "string",
"risk": {
"contracts": "number",
"max_loss_percent": 20,
"max_dollar_risk": "number"
},
"execution": {
"order_type": "LIMIT",
"limit_price": "number_or_null",
"should_execute_trade_api": "boolean"
}
}
},
"hard_blocks": [
{
"name": "NOT_WORTHY_NEWS",
"condition": "market_impact_score < 85",
"action": "REJECT_FOR_TRADE_VALIDATION"
},
{
"name": "NO_CLEAR_STRATEGY",
"condition": "strategy_clarity_score < 85",
"action": "REJECT"
},
{
"name": "DUPLICATE_ENTRY",
"condition": "duplicate_check == FAIL",
"action": "REJECT"
},
{
"name": "DIRECTION_CONFLICT",
"condition": "headline_direction != underlying_reaction_direction",
"action": "REJECT"
},
{
"name": "MISSING_OPTION_DATA",
"condition": "bid == null OR ask == null OR spread_percent == null",
"action": "REJECT"
},
{
"name": "XLE_BAD_DIRECTION",
"condition": "ticker == XLE AND direction == CALLS AND headline_direction == BEARISH_ENERGY",
"action": "REJECT"
},
{
"name": "STOP_MONITOR_NOT_AVAILABLE",
"condition": "post_fill_monitoring_available == false",
"action": "REJECT"
}
],
"developer_required_tests": {
"must_pass_before_live": [
"every incoming headline is stored and scored for market impact",
"headlines with market_impact_score below 70 do not alert",
"headlines with market_impact_score 70 to 84 go to manual review or watchlist only",
"headlines with market_impact_score 85 plus go to trade validation only if direction is clear",
"same XLE call headline cannot fire twice within duplicate window",
"bearish energy headline cannot create XLE calls",
"bullish energy headline requires crude and XLE confirmation",
"no trade can execute without bid ask spread data",
"no trade can execute without stop monitor available",
"every ENTER_TRADE output must include should_execute_trade_api true",
"every REJECT output must include should_execute_trade_api false",
"Fast News engine must not call A+ confirmation strategy"
]
}
}