
cryptoaltsseasonality
Altcoin Opportunities Detector
This workflow detects short-term altcoin opportunities based on the current market regime and altcoin rotation dynamics.
• If the market is in a Bear Market, altseason signals are ignored — no opportunities are shown.
• If it's a Bull Market but rotation hasn't started, the workflow stays focused on BTC and ETH.
• Once Altseason is confirmed, it generates a ranked list of the top altcoin setups with recovery or breakout potential.
The execution produces a concise digest, ideal for Telegram or Discord alerts.
All indicators are already connected to the Hunch Machine API, which provides optimized, pre-digested data for perfect market context.
Output example
🟢 Altseason Confirmed — Opportunity Snapshot Reversal momentum forming for altcoins after weekly correction. Avg 7d: -14.9%, 24h: +3.8%, room to ATH: 60%. Focus: ETH, XRP, SOL, DOGE, ADA Risk alert: Neutral market conditions — no major risk signals detected. Top Opportunity Setups: 1. ETH — 4.3% 24h, 31% to ATH 2. XRP — 6.2% 24h, 36% to ATH 3. SOL — 4.7% 24h, 45% to ATH 4. DOGE — 3.0% 24h, 77% to ATH 5. ADA — 4.7% 24h, 82% to ATH
How to use it
- Import the workflow JSON into n8n
- Go to your n8n dashboard → Import Workflow → select the .json file.
- Add your API key
- Connect your Hunch Machine API key to fetch all pre-digested market indicators.
- Optional: Add Telegram alerts
- Connect a Telegram node to the final digest node to receive formatted opportunity updates directly in chat.
- Run or schedule it
- Execute manually or use a Cron node to check automatically (e.g., every 4h or daily).
Required inputs
This automation uses Hunch Machine's optimized data endpoints, already normalized for AI processing and market regime awareness.
Market Regime
ma50_ma200_trend
Rotation Context
altcoin_rotation_radar
Opportunities Module
altcoin_opportunities
Use cases
- Find early altcoin rotations — Detect which alts are beginning to outperform as capital rotates from BTC.
- Automated trading signals — Use the ranked output to inform your short-term trades.
- Send formatted alerts — Deliver digest messages to Telegram or Discord.
- Integrate with dashboards or bots — Feed the JSON output into Notion, Google Sheets, or your custom AI assistant.
JSON Preview
{
"name": "HunchMachine.com - Altcoin Opportunities Detector",
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{
"daysInterval": 7,
"triggerAtHour": 1,
"triggerAtMinute": 10
}
]
}
},
"type": "n8n-nodes-base.scheduleTrigger",
"typeVersion": 1.2,
"position": [
-1664,
656
],
"id": "edb18a9c-8bc7-4f4f-83ed-5d38f07927fe",
"name": "Schedule Trigger"
},
{
"parameters": {},
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [
-1664,
480
],
"id": "8212164e-7903-4a6d-8f91-a50732d0a67b",
"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": [
-1472,
160
],
"typeVersion": 1,
"id": "4d039043-a573-4a66-b237-259c002c9a96",
"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": [
-1344,
480
],
"id": "614fbfe4-abb5-41a6-bb65-107daa532bb6",
"name": "set_api_key"
},
{
"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": [
-880,
400
],
"id": "427dc0c9-74e0-4a44-87ab-d26da671c65e",
"name": "ma50_ma200_trend"
},
{
"parameters": {
"content": "# READ ME\nThis workflow detects short-term altcoin opportunities based on the current market regime and altcoin rotation dynamics.\n\n- If the market is in a Bear Market, altseason signals are ignored — no opportunities are shown.\n\n- If it’s a Bull Market but rotation hasn’t started, the workflow stays focused on BTC and ETH.\n\n- Once Altseason is confirmed, it generates a ranked list of the top altcoin setups with recovery or breakout potential.\n\nThe execution produces a concise digest, ideal for Telegram or Discord alerts.\n\nAll indicators are already connected to the Hunch Machine API, which provides optimized, pre-digested data for perfect market context.\n\nJust add your API key once and connect a cron trigger to automate it.\n\nFor more info or to get your API key, visit hunchmachine.com",
"height": 448,
"width": 752,
"color": 7
},
"type": "n8n-nodes-base.stickyNote",
"position": [
-1472,
-432
],
"typeVersion": 1,
"id": "b8556c33-96a1-4e31-9ad2-542bd031fef8",
"name": "Sticky Note5"
},
{
"parameters": {
"content": "## Altseason Detection\n\n",
"height": 640,
"width": 448,
"color": 5
},
"type": "n8n-nodes-base.stickyNote",
"position": [
-416,
144
],
"typeVersion": 1,
"id": "56945011-4158-4214-8e00-48423888ebff",
"name": "Sticky Note"
},
{
"parameters": {
"content": "## Market Regime Detection\n\n",
"height": 624,
"width": 432,
"color": 6
},
"type": "n8n-nodes-base.stickyNote",
"position": [
-1040,
160
],
"typeVersion": 1,
"id": "e12daa08-0f7d-42a8-8762-5b98d0a7841e",
"name": "Sticky Note6"
},
{
"parameters": {
"content": "## Result Node\n\n\n\n",
"height": 400,
"width": 320,
"color": 7
},
"type": "n8n-nodes-base.stickyNote",
"position": [
848,
208
],
"typeVersion": 1,
"id": "3f7ce200-0562-4c8d-9ec7-e12c98899095",
"name": "Sticky Note7"
},
{
"parameters": {
"content": "## Get Notified\n\n\n- Just connect the previous node to this Telegram node and configure it with your credentials to send a chat message.\n\n\n",
"height": 400,
"width": 304,
"color": 7
},
"type": "n8n-nodes-base.stickyNote",
"position": [
1216,
208
],
"typeVersion": 1,
"id": "0b16ff1d-2bef-4ba6-ac1a-30e95b1f4bdf",
"name": "Sticky Note8"
},
{
"parameters": {
"text": "={{ $json.digest_message }}",
"additionalFields": {}
},
"type": "n8n-nodes-base.telegram",
"typeVersion": 1.2,
"position": [
1312,
384
],
"id": "9bd54392-052b-4abe-865b-2c5b5bd18159",
"name": "Send a text message",
"webhookId": "973c497a-870d-40fb-be2b-6e3e625fd105"
},
{
"parameters": {
"url": "=https://api.hunchmachine.com/webhook/indicators?indicator=altcoin_rotation_radar&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
-240,
384
],
"id": "a8ff2b0e-6a01-498d-8255-724673ec822d",
"name": "altcoin_rotation_radar"
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "ff334d79-8bad-433b-af77-e1d6731325e5",
"leftValue": "={{$json[\"is_confirmed_bull\"]}}",
"rightValue": "true",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
}
}
],
"combinator": "and"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.2,
"position": [
-560,
496
],
"id": "33d8408b-292d-48fd-b24b-947f245b5bac",
"name": "Are we in a Bull Market?"
},
{
"parameters": {
"content": "## Altcoin Opportunities\n\n",
"height": 640,
"width": 448
},
"type": "n8n-nodes-base.stickyNote",
"position": [
224,
144
],
"typeVersion": 1,
"id": "72d51553-c485-434f-a608-f0e8c58f1a48",
"name": "Sticky Note1"
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "f320ade7-87cc-46c9-8c26-1899a35573d0",
"leftValue": "={{ $json.phase }}",
"rightValue": "=early_altseason",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
},
{
"id": "fab90348-14c4-4a45-900f-75adccda833d",
"leftValue": "={{ $json.phase }}",
"rightValue": "full_altseason",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
}
],
"combinator": "or"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.2,
"position": [
80,
464
],
"id": "2b58da63-e8b7-4fad-8a1f-57799b138827",
"name": "Are we in altseason?"
},
{
"parameters": {
"url": "=https://api.hunchmachine.com/webhook/indicators?indicator=altcoin_opportunities&api_key={{ $node[\"set_api_key\"].json[\"your_api_key\"] }}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
400,
384
],
"id": "87591ad5-1ddd-4cd1-8f53-fae6bd974488",
"name": "altcoin_opportunities"
},
{
"parameters": {
"numberInputs": 3
},
"type": "n8n-nodes-base.merge",
"typeVersion": 3.2,
"position": [
720,
624
],
"id": "354d4e25-e2dd-4bcc-bd97-3e2ad9dcaed0",
"name": "Merge"
},
{
"parameters": {
"jsCode": "// === MARKET SUMMARY DIGEST (Optimized for Telegram / Notifications) ===\n// Gera uma mensagem curta e interpretável, com linguagem natural e foco no contexto de oportunidade.\n\nconst inputs = $input.all();\nif (!inputs.length) throw new Error(\"No input data received.\");\n\nconst data = inputs[0].json;\nconst indicator = data.indicator;\n\nlet message = \"\";\nlet timestamp = new Date().toISOString();\n\n// === 1️⃣ Bear Market ===\nif (indicator === \"ma50_ma200_trend\") {\n message =\n `📉 Bear Market Detected\\n\\n` +\n `Altseason models are inactive. Focus on accumulation or risk management.\\n` +\n `Wait for trend reversal or 50W/200W crossover before tracking altcoin signals.`;\n}\n\n// === 2️⃣ Bull Market (sem altseason confirmada) ===\nelse if (indicator === \"altcoin_rotation_radar\") {\n message =\n `🚀 Bull Market — BTC-led Phase\\n\\n` +\n `Altcoins remain mostly flat — rotation signals not yet confirmed.\\n\\n` +\n `Risk–reward still strongest in BTC and ETH. The Altcoin Opportunities module activates once rotation begins.`;\n}\n\n// === 3️⃣ Bull Market (Altseason confirmada) ===\nelse if (indicator === \"altcoin_opportunities\") {\n const summary = data.summary || {};\n const focus = summary.focus || \"Top altcoins rotating.\";\n const narrative = summary.narrative || \"\";\n const risk = summary.risk_alert || \"⚠️ Elevated volatility — manage size.\";\n const top = data.top_opportunities || [];\n\n // Cria lista de oportunidades com base no potencial e momentum\n const topList = top\n .slice(0, 5)\n .map(\n (c, i) =>\n `${i + 1}. ${c.symbol} — ${c.deltas?.[\"24h\"]?.toFixed(1) || \"?\"}% 24h, ` +\n `${Math.round((1 - (c.ath_ratio || 1)) * 100)}% upside to ATH`\n )\n .join(\"\\n\");\n\n message =\n `🟢 Altseason Confirmed — Opportunity Snapshot\\n\\n` +\n `${narrative}\\n\\n` +\n `Focus: ${focus}\\n` +\n `${risk}\\n\\n` +\n `🔍 Top Opportunity Setups\\n` +\n `Based on short-term momentum & upside potential:\\n${topList}`;\n}\n\n// === 4️⃣ Fallback ===\nelse {\n message =\n `⚪ *Market Context Unclear*\\n\\n` +\n `Unable to determine current regime or rotation phase.\\n` +\n `Check data sources or rerun the automation.`;\n}\n\n// === OUTPUT ===\nreturn [\n {\n json: {\n digest_message: message,\n timestamp,\n },\n },\n];\n"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
960,
384
],
"id": "37f16f06-6317-4ef7-803f-b1d56cb30d10",
"name": "Conclusion"
}
],
"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
}
]
]
},
"ma50_ma200_trend": {
"main": [
[
{
"node": "Are we in a Bull Market?",
"type": "main",
"index": 0
}
]
]
},
"altcoin_rotation_radar": {
"main": [
[
{
"node": "Are we in altseason?",
"type": "main",
"index": 0
}
]
]
},
"Are we in a Bull Market?": {
"main": [
[
{
"node": "altcoin_rotation_radar",
"type": "main",
"index": 0
}
],
[
{
"node": "Merge",
"type": "main",
"index": 2
}
]
]
},
"Are we in altseason?": {
"main": [
[
{
"node": "altcoin_opportunities",
"type": "main",
"index": 0
}
],
[
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"altcoin_opportunities": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Merge": {
"main": [
[
{
"node": "Conclusion",
"type": "main",
"index": 0
}
]
]
},
"Conclusion": {
"main": [
[]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"callerPolicy": "workflowsFromSameOwner",
"availableInMCP": false
},
"versionId": "dc6e4d7b-198b-47cb-b3ea-067c3f14c7f3",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "9OjgkwzfKFO1Y7nS",
"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.