AutomationFlowsAI & RAG › Kodoflow - Futures & Options Trading Copilot

Kodoflow - Futures & Options Trading Copilot

ByPaul Abraham @hellopaul on n8n.io

Use cases Analyze US equity behavior across 15m, 1h, and 1d timeframes Detect regime alignment or divergence in futures and options markets Combine price action with options context to assess conviction Aggregate real-time news sentiment for contextual awareness Build a…

Event trigger★★★★☆ complexityAI-powered28 nodesTelegram TriggerHTTP RequestGoogle GeminiGoogle Gemini ChatAgentTelegram
AI & RAG Trigger: Event Nodes: 28 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #12864 — we link there as the canonical source.

This workflow follows the Agent → Googlegemini recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "7434c291-314c-4ffd-ab95-4712be5cfc50",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1360,
        416
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "79b5f4a4-2f49-4c11-9968-1325e6b4098b",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -224,
        800
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "288c52d5-7bd9-435e-98e9-31c1519b59f5",
      "name": "Parse Underlying",
      "type": "n8n-nodes-base.code",
      "position": [
        0,
        800
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "c57185be-a1e2-44e7-9c76-5e6a82845bc4",
      "name": "Underlying Candles 15m",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        304,
        608
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "790c67bd-d321-4e20-abe0-b451b3715596",
      "name": "Underlying Candles 1h",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        304,
        800
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "ab199f0a-f274-4662-b880-aa0453cd9a46",
      "name": "Underlying Candles 1d",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        304,
        976
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "86a6c1d5-389d-45a5-b41b-4407a5d0ee78",
      "name": "Normalize 15m",
      "type": "n8n-nodes-base.set",
      "position": [
        576,
        608
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "2511128a-bd64-4587-848f-a2f8170c0a8e",
      "name": "Normalize 1h",
      "type": "n8n-nodes-base.set",
      "position": [
        576,
        800
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "21874971-6f1b-4aeb-a20a-561777082ddc",
      "name": "Normalize 1d",
      "type": "n8n-nodes-base.set",
      "position": [
        576,
        976
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "4ac95e7a-b3c9-4258-8b44-cf9543b3a3e5",
      "name": "Merge Candles",
      "type": "n8n-nodes-base.merge",
      "position": [
        976,
        800
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "c81b4954-c5f8-4231-9195-82d99779cfbb",
      "name": "Combine Candles",
      "type": "n8n-nodes-base.code",
      "position": [
        1168,
        816
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "4b8ff642-8d55-44bb-8a1c-67d58846d95b",
      "name": "Underlying Quote",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        304,
        1200
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "87ea273c-9da9-4a60-bcac-e28de9ae68a1",
      "name": "Pick Spot + Expiry",
      "type": "n8n-nodes-base.code",
      "position": [
        576,
        1200
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "b0f79342-ae3a-4d72-b4d4-06543ef797c6",
      "name": "Option Chain (MarketData.app)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        896,
        1200
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "5bc6f172-e177-44e5-b09f-e0e1deb4b7fe",
      "name": "Derive Options Signals",
      "type": "n8n-nodes-base.code",
      "position": [
        1104,
        1200
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "02b8d013-f9f4-4813-b7d8-3b5aa463de70",
      "name": "News",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        304,
        1408
      ],
      "parameters": {},
      "typeVersion": 4.3
    },
    {
      "id": "33b13398-fa37-4b86-9427-a58b2e79771f",
      "name": "Filter News",
      "type": "n8n-nodes-base.code",
      "position": [
        576,
        1408
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "7c6e6423-8201-4779-ad8e-2cea46ebfc3d",
      "name": "News Sentiment Analyzer",
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "position": [
        912,
        1408
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "ef7a2fef-9f00-492b-bfde-08e72d1d78b4",
      "name": "Merge (Candles + Options + News)",
      "type": "n8n-nodes-base.merge",
      "position": [
        1504,
        1088
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "a8f54a30-0de9-481f-a4a7-0e03febde2bf",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1744,
        1360
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d7675bc6-bb35-4184-99f8-cbd160decad5",
      "name": "F&O Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1744,
        1104
      ],
      "parameters": {},
      "typeVersion": 3
    },
    {
      "id": "aa636cef-6c2b-4996-be9f-9d0844861e55",
      "name": "Send Telegram Message",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2304,
        1104
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "5c294d4e-f1aa-4461-9fee-8c33cb760877",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        256,
        352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "bf102653-0385-46af-b58a-e00b2b94e3c4",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        256,
        1392
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "c0c8421b-dd7d-44c7-9963-ffc990e3f0bc",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        864,
        352
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "4d6eda6c-333f-457d-9156-5e26af7b4979",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        864,
        1376
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e59f852b-d927-4944-a3c9-a024b7a316a3",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1680,
        880
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "3fbcfea9-d2ca-4b24-8621-7cddd62c1fc7",
      "name": "HTML Sanitation",
      "type": "n8n-nodes-base.code",
      "position": [
        2080,
        1104
      ],
      "parameters": {},
      "typeVersion": 2
    }
  ],
  "connections": {
    "News": {
      "main": [
        [
          {
            "node": "Filter News",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "F&O Agent": {
      "main": [
        [
          {
            "node": "HTML Sanitation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter News": {
      "main": [
        [
          {
            "node": "News Sentiment Analyzer",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize 1d": {
      "main": [
        [
          {
            "node": "Merge Candles",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "Normalize 1h": {
      "main": [
        [
          {
            "node": "Merge Candles",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Merge Candles": {
      "main": [
        [
          {
            "node": "Combine Candles",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize 15m": {
      "main": [
        [
          {
            "node": "Merge Candles",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Combine Candles": {
      "main": [
        [
          {
            "node": "Merge (Candles + Options + News)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTML Sanitation": {
      "main": [
        [
          {
            "node": "Send Telegram Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Underlying": {
      "main": [
        [
          {
            "node": "Underlying Candles 15m",
            "type": "main",
            "index": 0
          },
          {
            "node": "Underlying Candles 1h",
            "type": "main",
            "index": 0
          },
          {
            "node": "Underlying Candles 1d",
            "type": "main",
            "index": 0
          },
          {
            "node": "Underlying Quote",
            "type": "main",
            "index": 0
          },
          {
            "node": "News",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Parse Underlying",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Underlying Quote": {
      "main": [
        [
          {
            "node": "Pick Spot + Expiry",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pick Spot + Expiry": {
      "main": [
        [
          {
            "node": "Option Chain (MarketData.app)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Underlying Candles 1d": {
      "main": [
        [
          {
            "node": "Normalize 1d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Underlying Candles 1h": {
      "main": [
        [
          {
            "node": "Normalize 1h",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Derive Options Signals": {
      "main": [
        [
          {
            "node": "Merge (Candles + Options + News)",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Underlying Candles 15m": {
      "main": [
        [
          {
            "node": "Normalize 15m",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "News Sentiment Analyzer": {
      "main": [
        [
          {
            "node": "Merge (Candles + Options + News)",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "F&O Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Option Chain (MarketData.app)": {
      "main": [
        [
          {
            "node": "Derive Options Signals",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge (Candles + Options + News)": {
      "main": [
        [
          {
            "node": "F&O Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Use cases Analyze US equity behavior across 15m, 1h, and 1d timeframes Detect regime alignment or divergence in futures and options markets Combine price action with options context to assess conviction Aggregate real-time news sentiment for contextual awareness Build a…

Source: https://n8n.io/workflows/12864/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This project is a template for building a complete academic virtual assistant using n8n. It connects to Telegram, answers frequently asked questions by querying MongoDB, keeps the community informed a

Telegram, MongoDB, Telegram Trigger +6
AI & RAG

Telegram Bot. Uses agent, memoryBufferWindow, telegram, @elevenlabs/n8n-nodes-elevenlabs. Event-driven trigger; 41 nodes.

Agent, Memory Buffer Window, Telegram +5
AI & RAG

This workflow acts as an intelligent content engine. Simply send a link to your Telegram bot (e.g., a product page or news article), and it will automatically scrape the content, rewrite it into a hig

Google Gemini, Agent, OpenRouter Chat +7
AI & RAG

This workflow transforms text-based resume data into visually stunning images by leveraging Google Gemini's reasoning and vision capabilities. It autonomously analyzes the candidate's profile, selects

HTTP Request, Telegram, Output Parser Structured +7
AI & RAG

Use cases Automatically analyze crypto market trends using 15m, 1h, and 1d candlestick data. Aggregate global crypto news sentiment to reinforce price-action confidence. Generate AI-powered Buy / Sell

Telegram Trigger, HTTP Request, Google Gemini Chat +3