{"openapi":"3.0.3","info":{"title":"Trading Signals Toolkit","version":"1.0.0","description":"Futures session briefs, SEC insider-buy clusters, Base token verdicts, and quant calculators. Pay per call over x402 (USDC on Base), or pass a free or subscription API key (x-api-key / Bearer) to skip the wallet payment.","x-guidance":"Call unpaid to receive HTTP 402 with PAYMENT-REQUIRED. Retry with PAYMENT-SIGNATURE (x402 v2 exact scheme, eip155:8453 USDC). Prefer clients that echo bazaar extensions so facilitators can catalog the route. A free or paid API key may be sent as x-api-key instead of paying per call.","contact":{"email":"gdietsch-j16thn@mail.grokbot.com"}},"servers":[{"url":"https://signals.incomefather.com"}],"paths":{"/bundle/pre-trade-check":{"get":{"summary":"Pre-Trade Check: one GO / CAUTION / NO_GO answer with plain reasons for ES/NQ/CL/GC/ZN, combining the event-risk gate, the symbol session brief (calendar, yields, CFTC positioning), SEC Form 4 insider activity (your ticker, or top market-wide clusters) and an optional Base token verdict","description":"Pre-Trade Check: one GO / CAUTION / NO_GO answer with plain reasons for ES/NQ/CL/GC/ZN, combining the event-risk gate, the symbol session brief (calendar, yields, CFTC positioning), SEC Form 4 insider activity (your ticker, or top market-wide clusters) and an optional Base token verdict. Params: symbol (required), window, ticker, token.","operationId":"get_bundle_pre_trade_check","tags":["pre-trade","risk-check","futures","insider-trading","trading-bot"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.100000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"symbol","in":"query","required":true,"schema":{"type":"string","enum":["ES","NQ","CL","GC","ZN"]}},{"name":"window","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":240,"default":30}},{"name":"ticker","in":"query","required":false,"schema":{"type":"string","description":"US equity ticker; adds SEC insider buys for it"}},{"name":"token","in":"query","required":false,"schema":{"type":"string","description":"Base ERC-20 address; adds token verdict"}}]}},"/futures/event-study":{"get":{"summary":"Macro Event Study (what happened last time): ES/NQ/RTY/ZN proxy moves at +5/+15/+30/+60 min after each of the last N CPI, NFP, FOMC, PPI, retail sales, GDP or PCE releases (% and approx","description":"Macro Event Study (what happened last time): ES/NQ/RTY/ZN proxy moves at +5/+15/+30/+60 min after each of the last N CPI, NFP, FOMC, PPI, retail sales, GDP or PCE releases (% and approx. points), plus median/mean/80th/90th-pct absolute moves, max adverse move, % of releases with a >0.5% 30-min move, up/down counts and a suggested stop width. Params: event (required), symbol, lookback, price. IEX historical data (free, T+1).","operationId":"get_futures_event_study","tags":["futures","event-study","macro","volatility","stop-loss"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"event","in":"query","required":true,"schema":{"type":"string","enum":["CPI","NFP","FOMC","PPI","RETAIL","GDP","PCE"]}},{"name":"symbol","in":"query","required":false,"schema":{"type":"string","enum":["ES","NQ","RTY","ZN","ZB","SPY","QQQ","IWM","IEF","TLT"],"default":"ES"}},{"name":"lookback","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":24,"default":12}},{"name":"price","in":"query","required":false,"schema":{"type":"number","description":"Current price; expresses moves in points"}}]}},"/futures/session-brief":{"get":{"summary":"Futures Session Brief for ES/NQ/CL/GC/ZN: next US high-impact releases (BLS, FOMC, Treasury auctions, jobless claims) with ET times & minutes-to, latest/prior BLS values, Treasury 2s/10s/2s10s + daily change, CFTC COT net positioning with 3y percentile, holiday/early-close flags, and a safeToTrade verdict","description":"Futures Session Brief for ES/NQ/CL/GC/ZN: next US high-impact releases (BLS, FOMC, Treasury auctions, jobless claims) with ET times & minutes-to, latest/prior BLS values, Treasury 2s/10s/2s10s + daily change, CFTC COT net positioning with 3y percentile, holiday/early-close flags, and a safeToTrade verdict. US government public-domain data only.","operationId":"get_futures_session_brief","tags":["futures","macro","economic-calendar","event-risk","cot"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.030000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"symbol","in":"query","required":true,"schema":{"type":"string","enum":["ES","NQ","CL","GC","ZN"]}},{"name":"window","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":240,"default":30}}]}},"/futures/event-gate":{"get":{"summary":"Event-Risk Gate: one-call safeToTrade verdict + next high-impact US release (BLS CPI/NFP/PPI, FOMC, Treasury auctions) within a minutes window","description":"Event-Risk Gate: one-call safeToTrade verdict + next high-impact US release (BLS CPI/NFP/PPI, FOMC, Treasury auctions) within a minutes window. Public-domain agency data.","operationId":"get_futures_event_gate","tags":["futures","event-risk","economic-calendar","trading-bot","gate"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"window","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":240,"default":30}}]}},"/base/token-verdict":{"get":{"summary":"Base token verdict A-F: ERC-20 metadata & supply, owner/renounced, EIP-1967 proxy/upgradeable check, Uniswap v2/v3 + Aerodrome liquidity vs WETH/USDC, buy→sell honeypot simulation with taxes (eth_call), known-holder concentration","description":"Base token verdict A-F: ERC-20 metadata & supply, owner/renounced, EIP-1967 proxy/upgradeable check, Uniswap v2/v3 + Aerodrome liquidity vs WETH/USDC, buy→sell honeypot simulation with taxes (eth_call), known-holder concentration. Read straight from Base mainnet.","operationId":"get_base_token_verdict","tags":["base","token","security","honeypot","rug-check"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"address","in":"query","required":true,"schema":{"type":"string","description":"Base ERC-20 contract address"}}]}},"/sec/insider-buys":{"get":{"summary":"SEC Form 4 open-market insider purchases (code P) for one ticker: insider, role, shares, price, value, dates, per-insider totals, cluster flag","description":"SEC Form 4 open-market insider purchases (code P) for one ticker: insider, role, shares, price, value, dates, per-insider totals, cluster flag. Derived from SEC EDGAR.","operationId":"get_sec_insider_buys","tags":["sec","insider-trading","form4","stocks","signals"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90,"default":30}}]}},"/sec/insider-clusters":{"get":{"summary":"Market-wide insider cluster buys: listed tickers with >=3 distinct insiders making open-market purchases (Form 4 code P) in the last N days, with buyers, roles, totals and VWAP","description":"Market-wide insider cluster buys: listed tickers with >=3 distinct insiders making open-market purchases (Form 4 code P) in the last N days, with buyers, roles, totals and VWAP. Derived from SEC EDGAR.","operationId":"get_sec_insider_clusters","tags":["sec","insider-trading","cluster-buys","stocks","screener"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":14,"default":7}},{"name":"minBuyers","in":"query","required":false,"schema":{"type":"integer","minimum":2,"maximum":10,"default":3}}]}},"/quant/vwap-bands":{"post":{"summary":"VWAP + standard-deviation bands from your OHLCV bars (session-anchored or full), z-score and band position","description":"VWAP + standard-deviation bands from your OHLCV bars (session-anchored or full), z-score and band position. POST JSON {bars:[{t,o,h,l,c,v}], anchor, bands, tz}. Max 5000 bars.","operationId":"post_quant_vwap_bands","tags":["quant","vwap","indicators","calculator","trading"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["bars"],"properties":{"bars":{"type":"array","maxItems":5000,"items":{"type":"object","required":["t","o","h","l","c","v"],"properties":{"t":{"description":"ISO-8601 or epoch s/ms"},"o":{"type":"number"},"h":{"type":"number"},"l":{"type":"number"},"c":{"type":"number"},"v":{"type":"number"}}}}}}}}}}},"/quant/orb":{"post":{"summary":"Opening range (first N minutes) high/low/size for the latest session in your bars, breakout state, first breakout, 1x/2x extension targets","description":"Opening range (first N minutes) high/low/size for the latest session in your bars, breakout state, first breakout, 1x/2x extension targets. POST JSON {bars, minutes, sessionStart, tz}. Max 5000 bars.","operationId":"post_quant_orb","tags":["quant","opening-range","breakout","calculator","trading"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["bars"],"properties":{"bars":{"type":"array","maxItems":5000,"items":{"type":"object","required":["t","o","h","l","c","v"],"properties":{"t":{"description":"ISO-8601 or epoch s/ms"},"o":{"type":"number"},"h":{"type":"number"},"l":{"type":"number"},"c":{"type":"number"},"v":{"type":"number"}}}}}}}}}}},"/quant/atr-stop":{"post":{"summary":"Wilder ATR, ATR-multiple stop and position size from account risk %","description":"Wilder ATR, ATR-multiple stop and position size from account risk %. POST JSON {bars, period, multiplier, side, accountSize, riskPct, pointValue}. Max 5000 bars.","operationId":"post_quant_atr_stop","tags":["quant","atr","stop-loss","position-sizing","risk"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["bars"],"properties":{"bars":{"type":"array","maxItems":5000,"items":{"type":"object","required":["t","o","h","l","c","v"],"properties":{"t":{"description":"ISO-8601 or epoch s/ms"},"o":{"type":"number"},"h":{"type":"number"},"l":{"type":"number"},"c":{"type":"number"},"v":{"type":"number"}}}}}}}}}}},"/quant/backtest-orb":{"post":{"summary":"Opening-range-breakout backtest on your intraday bars: trades, win rate, avg R, total R, profit factor, max drawdown, exits, long/short split, recent trades","description":"Opening-range-breakout backtest on your intraday bars: trades, win rate, avg R, total R, profit factor, max drawdown, exits, long/short split, recent trades. POST JSON {bars, minutes, rr, stop, direction, costPerTrade}. Max 5000 bars.","operationId":"post_quant_backtest_orb","tags":["quant","backtest","opening-range","strategy","trading"],"x-payment-info":{"protocols":["x402"],"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"network":"eip155:8453","payTo":"0x6d7be981c103eD360874a7703ad3CD6a98929aFB","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"responses":{"200":{"description":"JSON response after x402 settlement, or with a valid subscription API key"},"401":{"description":"Invalid or inactive API key"},"402":{"description":"Payment Required (x402 v2 PAYMENT-REQUIRED header) when no API key is sent"},"429":{"description":"Subscription monthly quota exceeded"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["bars"],"properties":{"bars":{"type":"array","maxItems":5000,"items":{"type":"object","required":["t","o","h","l","c","v"],"properties":{"t":{"description":"ISO-8601 or epoch s/ms"},"o":{"type":"number"},"h":{"type":"number"},"l":{"type":"number"},"c":{"type":"number"},"v":{"type":"number"}}}}}}}}}}}},"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"x402 v2 payment signature header after signing the 402 challenge"},"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Subscription API key (tsk_…). Skips the x402 payment while the plan is active and under quota. Alternatively send Authorization: Bearer."},"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"tsk","description":"Same subscription API key as x-api-key, sent as Authorization: Bearer tsk_…"}}},"security":[{"x402":[]},{"apiKey":[]},{"bearerAuth":[]}]}