Crypto Top & Bottom Detector
cryptocyclesvaluation

Crypto Top & Bottom Detector

Crypto Top & Bottom Detector monitors key on-chain and market indicators to detect when the market might be approaching a cycle top or a macro bottom. If we're in a Bull Run, it checks how many Top Indicators are flashing — the same metrics that historically mark overheated zones and potential peaks. If we're in a Bear Market, it tracks how many Bottom Indicators are active — showing when conditions align for deep-value accumulation. It's built for investors who want to understand where we are in the broader market cycle — to find better entry and exit points instead of reacting to short-term noise.

Output example

Bull market in progress — 0 top indicators flashing (none). Risk level: Low Interpretation: Market structure remains constructive — no major top signals detected. Corrections are normal within this phase; dips near the 50W MA are still healthy accumulation zones.

How to use it

  • Import the workflow JSON into n8n.
    • Go to your n8n dashboard → click Import Workflow → select the .json file.
  • Add your API key.
    • Connect your Hunch Machine API key to pull all pre-digested indicators.
  • Optional: Add Telegram alerts.
    • Connect the Telegram node to the "true" output of the IF node to receive a chat message when a new signal triggers.
  • Run or schedule it.
    • Run manually or add a Cron node to check automatically (e.g., daily).

Required inputs

This automation uses Hunch Machine's optimized indicators, already normalized for AI processing. It detects both tops and bottoms depending on the market regime.

Market Regime:

  • ma50_ma200_trend

Sentiment & Derivatives Indicators:

  • btc_futures_basis
  • btc_funding_rate
  • altcoin_appetite_index
  • crypto_news_summary
  • btc_open_interest
  • fear_greed_index_trend

Cycle & Valuation Indicators:

  • 2y_ma_multiplier
  • pi_cycle_top
  • mayer_multiple
  • halving_cycle
  • rainbow_chart
  • stock_to_flow
  • golden_ratio_multiplier
  • ahr999_index

Use cases

  • Get alerts when new cycle signals appearReceive notifications via Telegram or Discord.
  • Integrate into dashboardsFeed the JSON output into Notion, Google Sheets, or your analytics stack.
  • Plug into AI agentsUse it as a reasoning layer for trading assistants or research bots.
  • Auto-publish to social or newsletterShare clean market status updates without writing manually.
JSON Preview
{
  "name": "HunchMachine.com - Crypto Top & Bottom Detection",
  "nodes": [
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "daysInterval": 7,
              "triggerAtHour": 1,
              "triggerAtMinute": 10
            }
          ]
        }
      },
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        -1760,
        656
      ],
      "id": "0ab9da29-0074-4ad8-ac20-2070ea3dbcce",
      "name": "Schedule Trigger"
    },
    {
      "parameters": {},
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        -1760,
        480
      ],
      "id": "53dd8781-78e1-4325-b927-bfecc26c6a19",
      "name": "When clicking ‘Execute workflow’"
    },
    {
      "parameters": {
        "content": "## Plug & Play Api Key\n\nFor the best results — and to instantly unlock all indicators — connect your hunchmachine.com API key here (paste it in the field \"value\").\n\nHunch Machine delivers cycle-aware market indicators and digested insights designed for seamless integration with agents, dashboards, and automations powered by LLMs.\n\nLearn more and get your API key at\nhunchmachine.com/api",
        "height": 624,
        "width": 384,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1600,
        160
      ],
      "typeVersion": 1,
      "id": "37d1582a-4249-46d1-9f2f-cbcc9a32a5f6",
      "name": "Sticky Note3"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "883854ea-1e2b-4764-8aeb-20f6c23024c8",
              "name": "your_api_key",
              "value": "",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        -1472,
        480
      ],
      "id": "446a023b-a2d7-43df-bac6-a5afe368b2a3",
      "name": "set_api_key"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=btc_funding_rate&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        336,
        160
      ],
      "id": "af6a63bc-fe6e-4323-a72d-c9708e5b9111",
      "name": "btc_funding_rate"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=btc_open_interest&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        336,
        320
      ],
      "id": "0d85476f-2b41-4cca-8b6f-382f80398c1f",
      "name": "btc_open_interest"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=ma50_ma200_trend&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -704,
        112
      ],
      "id": "fd045b3d-a662-47da-bf7c-42b1f49e2449",
      "name": "ma50_ma200_trend"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=btc_futures_basis&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        144,
        96
      ],
      "id": "692d7b7e-e4d7-44fa-81a0-9b1d6700a931",
      "name": "btc_futures_basis"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=pi_cycle_top&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -880,
        576
      ],
      "id": "6b646157-4280-47d7-b620-24c5fb06e744",
      "name": "pi_cycle_top"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=rainbow_chart&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -880,
        720
      ],
      "id": "aaeabed7-8d5e-49b6-b17d-77e609a400fa",
      "name": "rainbow_chart"
    },
    {
      "parameters": {
        "content": "## Local Euphoria Indicators\n\n",
        "height": 576,
        "width": 960,
        "color": 2
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -144,
        0
      ],
      "typeVersion": 1,
      "id": "78b3aacf-2c23-402e-a414-aecfeb3266d6",
      "name": "Sticky Note4"
    },
    {
      "parameters": {
        "content": "# READ ME\nThis workflow detects potential cycle tops and bottoms based on the current market regime.\n\n- If the market is in a Bull Run, it checks how many Top Indicators are flashing.\n\n- If it’s in a Bear Market, it checks how many Bottom Indicators are active.\n\nIt stores the last result and only sends a Telegram notification when new indicators are triggered.\n\nAll indicators are already connected to the Hunch Machine API, which provides optimized, pre-digested data for perfect cycle context.\n\nJust add your API key once and let it run automatically (connect the cron trigger first at the start and execute it first).\n\nFor more info or to get your API key, visit hunchmachine.com",
        "height": 384,
        "width": 752,
        "color": 7
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1600,
        -784
      ],
      "typeVersion": 1,
      "id": "910b94e9-be09-4e2c-bf46-d192436fd921",
      "name": "Sticky Note5"
    },
    {
      "parameters": {
        "content": "## Cycle Top & Bottom Indicators\n\n",
        "height": 704,
        "width": 960,
        "color": 5
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1152,
        352
      ],
      "typeVersion": 1,
      "id": "6d3118a0-4467-41ec-bfb8-cb939fc281a1",
      "name": "Sticky Note"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=altcoin_appetite_index&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        144,
        240
      ],
      "id": "d7863ace-2d68-4016-8247-57191934e887",
      "name": "altcoin_appetite_index"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=fear_greed_index_trend&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        144,
        384
      ],
      "id": "a03c636e-9eb3-46de-98a9-e3a3e89aae1c",
      "name": "fear_greed_index_trend"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=ahr999_index&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -880,
        864
      ],
      "id": "509e224f-83d1-4e00-8330-d8cb0e0a2198",
      "name": "ahr999_index"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=2y_ma_multiplier&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -672,
        496
      ],
      "id": "eb421cd6-9966-4f8a-9d74-57ae2e3a9b88",
      "name": "2y_ma_multiplier"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=mayer_multiple&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -672,
        656
      ],
      "id": "36a8b2ee-71f2-493c-ac34-7b8139c721be",
      "name": "mayer_multiple"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=golden_ratio_multiplier&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -672,
        816
      ],
      "id": "8c9505f5-1e5f-4740-9b76-755cd005edf9",
      "name": "golden_ratio_multiplier"
    },
    {
      "parameters": {
        "numberInputs": 6
      },
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        928,
        160
      ],
      "id": "ab4c1e45-24eb-4018-8e06-194c04b07a18",
      "name": "Euphoria Merge"
    },
    {
      "parameters": {
        "numberInputs": 8
      },
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        928,
        672
      ],
      "id": "3cf97389-9d22-42a9-8446-d3d5a01c5d06",
      "name": "Euphoria Merge1"
    },
    {
      "parameters": {
        "numberInputs": 3
      },
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        1136,
        448
      ],
      "id": "dc0e3f75-3fd8-4489-a0ee-2cdcb2817e3f",
      "name": "Merge"
    },
    {
      "parameters": {
        "content": "## Current Market Regime\n\n",
        "height": 304,
        "width": 960,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1152,
        0
      ],
      "typeVersion": 1,
      "id": "c9dff8ff-a4de-4b2f-a3cc-c33f38377028",
      "name": "Sticky Note6"
    },
    {
      "parameters": {
        "jsCode": "// === Regime-Aware Top & Bottom Detector ===\n\nconst items = $input.all().map(i => i.json);\n\n// 1️⃣ Identify the market regime\nconst regime = items.find(i => i.indicator === \"ma50_ma200_trend\");\nlet market_regime = \"neutral\";\nif (regime?.is_confirmed_bull) market_regime = \"bull\";\nelse if (regime?.is_confirmed_bear) market_regime = \"bear\";\n\n// 2️⃣ Helper function to interpret each indicator\nfunction interpret(ind) {\n  const id = ind.indicator;\n  let top = false, bottom = false;\n\n  switch (id) {\n    // === Top signals ===\n    case \"mayer_multiple\":\n      if (ind.value > 2.4) top = true;\n      break;\n    case \"2y_ma_multiplier\":\n      if (ind.value > 1.8) top = true;\n      break;\n    case \"pi_cycle_top\":\n      if (ind.signal?.includes(\"Top\")) top = true;\n      break;\n    case \"rainbow_chart\":\n      if ((ind.zone_score ?? 5) >= 7) top = true;\n      break;\n    case \"ahr999_index\":\n      if (ind.value > 3.5) top = true;\n      break;\n    case \"golden_ratio_multiplier\":\n      if (ind.normalized_score > 0.8) top = true;\n      break;\n    case \"btc_futures_basis\":\n      if (ind.value > 10) top = true;\n      break;\n    case \"btc_funding_rate\":\n      if (ind.value > 0.02) top = true;\n      break;\n    case \"fear_greed_index_trend\":\n      if (ind.value >= 80) top = true;\n      else if (ind.value <= 25) bottom = true;\n      break;\n    case \"crypto_news_summary\":\n      if (parseFloat(ind.sentiment_score) >= 9) top = true;\n      else if (parseFloat(ind.sentiment_score) <= 1) bottom = true;\n      break;\n\n    // === Bottom signals ===\n    case \"mayer_multiple\":\n      if (ind.value < 0.8) bottom = true;\n      break;\n    case \"2y_ma_multiplier\":\n      if (ind.value < 0.8) bottom = true;\n      break;\n    case \"rainbow_chart\":\n      if ((ind.zone_score ?? 5) <= 3) bottom = true;\n      break;\n    case \"ahr999_index\":\n      if (ind.value < 1.2) bottom = true;\n      break;\n    case \"golden_ratio_multiplier\":\n      if (ind.normalized_score < 0.2) bottom = true;\n      break;\n    case \"stock_to_flow\":\n      if (ind.zone?.includes(\"undervaluation\")) bottom = true;\n      break;\n  }\n\n  return { id, top, bottom };\n}\n\n// 3️⃣ Interpret all indicators\nconst interpreted = items.map(interpret);\n\n// 4️⃣ Filter according to market regime\nconst topSignals = interpreted.filter(i => i.top).map(i => i.id);\nconst bottomSignals = interpreted.filter(i => i.bottom).map(i => i.id);\n\nlet signal_focus, active_signals, triggers, risk_level, message;\n\nif (market_regime === \"bull\") {\n  signal_focus = \"top\";\n  active_signals = topSignals.length;\n  triggers = topSignals;\n} else if (market_regime === \"bear\") {\n  signal_focus = \"bottom\";\n  active_signals = bottomSignals.length;\n  triggers = bottomSignals;\n} else {\n  signal_focus = \"neutral\";\n  active_signals = 0;\n  triggers = [];\n}\n\n// 5️⃣ Assess risk level\nif (active_signals >= 4) risk_level = \"high\";\nelse if (active_signals >= 2) risk_level = \"medium\";\nelse risk_level = \"low\";\n\n// 6️⃣ Build descriptive message\nif (market_regime === \"bull\") {\n  message = `Bull market in progress — ${active_signals} top indicators flashing (${triggers.join(\", \") || \"none\"}).`;\n  if (risk_level === \"high\") message += \" Possible cycle peak zone ⚠️\";\n} else if (market_regime === \"bear\") {\n  message = `Bear market conditions — ${active_signals} bottom indicators active (${triggers.join(\", \") || \"none\"}).`;\n  if (risk_level === \"high\") message += \" Potential macro bottom forming 🟢\";\n} else {\n  message = \"Market regime unclear — no strong directional signal.\";\n}\n\n// 7️⃣ Final output\nreturn [{\n  json: {\n    timestamp: new Date().toISOString(),\n    market_regime,\n    signal_focus,\n    active_signals,\n    risk_level,\n    triggers,\n    message\n  }\n}];\n"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        1408,
        464
      ],
      "id": "56ac235f-26af-4554-9e50-fc90d7721577",
      "name": "Top&Bottom Triggers"
    },
    {
      "parameters": {
        "jsCode": "// === Persistent Trigger Counter (for n8n v2 Code Node) ===\n\n// Uses the global scope of the n8n runtime (persists between executions)\nglobal.lastTriggerCount = global.lastTriggerCount ?? 0;\n\nconst current = $json.active_signals ?? 0;\nconst previous = global.lastTriggerCount;\n\nconst trigger_increased = current > previous;\n\n// Atualiza o valor global\nglobal.lastTriggerCount = current;\n\nreturn [\n  {\n    json: {\n      ...$json,\n      previous_triggers: previous,\n      trigger_increased\n    }\n  }\n];\n"
      },
      "type": "n8n-nodes-base.code",
      "typeVersion": 2,
      "position": [
        1712,
        464
      ],
      "id": "9293c856-dc36-46e9-b6d0-65e616332b25",
      "name": "Code in JavaScript"
    },
    {
      "parameters": {
        "content": "## Result Node\n\n- If the market is in a Bull Run, it counts how many Top Indicators are flashing.\n\n- If the market is in a Bear phase, it counts how many Bottom Indicators are active.\n\n",
        "height": 432,
        "width": 320,
        "color": 7
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1296,
        240
      ],
      "typeVersion": 1,
      "id": "58b3f558-0120-4ac3-ab57-c1aa7ed9da37",
      "name": "Sticky Note7"
    },
    {
      "parameters": {
        "content": "## Get Notified\n\n\nThis is an example use case for this automation:\n\n- It stores the last result and sends a Telegram notification whenever a new indicator is triggered.\n\n- Simply connect the Telegram node to the “true” output of the IF node and set it up with your credential to send a chat message.\n\n\n",
        "height": 432,
        "width": 688,
        "color": 7
      },
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1664,
        240
      ],
      "typeVersion": 1,
      "id": "a754a572-5779-4fdf-94b9-5b34806fce76",
      "name": "Sticky Note8"
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 2
          },
          "conditions": [
            {
              "id": "fd767607-5691-4ff7-97b5-4a3643eae853",
              "leftValue": "={{$json[\"trigger_increased\"]}}",
              "rightValue": "",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.if",
      "typeVersion": 2.2,
      "position": [
        1904,
        464
      ],
      "id": "c79ce73b-ba08-40be-aa9b-3944c1bd94fd",
      "name": "If"
    },
    {
      "parameters": {
        "text": "=🚨 New Top Indicator Triggered! 🚨  \n\nMarket regime: {{$json[\"market_regime\"]}} \nSignal focus: {{$json[\"signal_focus\"]}} \nActive signals: {{$json[\"active_signals\"]}} \nRisk level: {{$json[\"risk_level\"]}}",
        "additionalFields": {}
      },
      "type": "n8n-nodes-base.telegram",
      "typeVersion": 1.2,
      "position": [
        2144,
        464
      ],
      "id": "fad9c89b-185e-4261-bf8e-64eaf4cb7bb9",
      "name": "Send a text message",
      "webhookId": "691a8db3-25a3-43d2-ba7a-f99d8dc81a18"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=stock_to_flow&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -480,
        752
      ],
      "id": "bcb49061-4588-4ce5-9213-56724c573c56",
      "name": "stock-to-flow"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=crypto_news_summary&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        512,
        224
      ],
      "id": "42265ed0-310d-4994-945e-544e1e79952c",
      "name": "crypto_news_summary"
    },
    {
      "parameters": {
        "url": "=https://api.hunchmachine.com/webhook/indicators?indicator=halving_cycle&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        -480,
        592
      ],
      "id": "5a91b9e1-2b17-4e0d-8cf0-8349161768d2",
      "name": "halving_cycle"
    }
  ],
  "pinData": {},
  "connections": {
    "Schedule Trigger": {
      "main": [
        []
      ]
    },
    "When clicking ‘Execute workflow’": {
      "main": [
        [
          {
            "node": "set_api_key",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "set_api_key": {
      "main": [
        [
          {
            "node": "ma50_ma200_trend",
            "type": "main",
            "index": 0
          },
          {
            "node": "btc_futures_basis",
            "type": "main",
            "index": 0
          },
          {
            "node": "pi_cycle_top",
            "type": "main",
            "index": 0
          },
          {
            "node": "rainbow_chart",
            "type": "main",
            "index": 0
          },
          {
            "node": "altcoin_appetite_index",
            "type": "main",
            "index": 0
          },
          {
            "node": "fear_greed_index_trend",
            "type": "main",
            "index": 0
          },
          {
            "node": "btc_funding_rate",
            "type": "main",
            "index": 0
          },
          {
            "node": "crypto_news_summary",
            "type": "main",
            "index": 0
          },
          {
            "node": "btc_open_interest",
            "type": "main",
            "index": 0
          },
          {
            "node": "2y_ma_multiplier",
            "type": "main",
            "index": 0
          },
          {
            "node": "mayer_multiple",
            "type": "main",
            "index": 0
          },
          {
            "node": "halving_cycle",
            "type": "main",
            "index": 0
          },
          {
            "node": "ahr999_index",
            "type": "main",
            "index": 0
          },
          {
            "node": "golden_ratio_multiplier",
            "type": "main",
            "index": 0
          },
          {
            "node": "stock-to-flow",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "btc_funding_rate": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "btc_open_interest": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "ma50_ma200_trend": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "btc_futures_basis": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "pi_cycle_top": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "rainbow_chart": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "Euphoria Merge": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "altcoin_appetite_index": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "fear_greed_index_trend": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "2y_ma_multiplier": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "mayer_multiple": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "golden_ratio_multiplier": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 6
          }
        ]
      ]
    },
    "ahr999_index": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 7
          }
        ]
      ]
    },
    "Euphoria Merge1": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Top&Bottom Triggers",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Top&Bottom Triggers": {
      "main": [
        [
          {
            "node": "Code in JavaScript",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code in JavaScript": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If": {
      "main": [
        []
      ]
    },
    "stock-to-flow": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "crypto_news_summary": {
      "main": [
        [
          {
            "node": "Euphoria Merge",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "halving_cycle": {
      "main": [
        [
          {
            "node": "Euphoria Merge1",
            "type": "main",
            "index": 2
          }
        ]
      ]
    }
  },
  "active": false,
  "settings": {
    "executionOrder": "v1",
    "callerPolicy": "workflowsFromSameOwner",
    "availableInMCP": false
  },
  "versionId": "99b70b4b-83a8-41d5-88c1-efd96a75cb9d",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "id": "FktNvgXJ3Qn9SVKS",
  "tags": [
    {
      "createdAt": "2025-10-31T13:12:26.647Z",
      "updatedAt": "2025-10-31T13:12:26.647Z",
      "id": "XLdkXZJ5ADfY0hYE",
      "name": "hunchmachine"
    },
    {
      "createdAt": "2025-11-03T02:59:14.308Z",
      "updatedAt": "2025-11-03T02:59:14.308Z",
      "id": "Y5WyFPT75izhdDSU",
      "name": "Free Automation"
    }
  ]
}

Automation: free · Real-time data and indicators: via API.