{
  "name": "Discord Forex AI trading assistant w/ proper position sizing (metatrader5)",
  "nodes": [
    {
      "id": "5a6511d5-a362-4fa5-9ecb-292345917975",
      "name": "parse ai response1",
      "type": "n8n-nodes-base.code",
      "position": [
        3936,
        240
      ]
    },
    {
      "id": "a2028cf4-f76b-42f1-b164-03c85da1fafd",
      "name": "Schedule Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        800,
        784
      ]
    },
    {
      "id": "827e4d01-b7d1-476d-ad33-98226d3ae62f",
      "name": "if there is an error1",
      "type": "n8n-nodes-base.if",
      "position": [
        4080,
        128
      ]
    },
    {
      "id": "cc21842d-6f8b-4d1a-8447-d50095c48a33",
      "name": "HTTP Request send market order1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3520,
        768
      ]
    },
    {
      "id": "efaa4014-dd33-41b5-b3a7-7d2ddf239f31",
      "name": "Get recent message - omni1",
      "type": "n8n-nodes-base.discord",
      "position": [
        1168,
        784
      ]
    },
    {
      "id": "e4507582-fd6b-42d0-a7b0-7c31f0ab202d",
      "name": "Switch2",
      "type": "n8n-nodes-base.switch",
      "position": [
        2224,
        720
      ]
    },
    {
      "id": "8995f052-bd63-41e2-aea5-40260e92c359",
      "name": "parse LLM output1",
      "type": "n8n-nodes-base.code",
      "position": [
        2064,
        784
      ]
    },
    {
      "id": "21e6d39c-cea2-44c5-b6fe-0e1cc78ae826",
      "name": "Trading Assistant Classifier & Responder2",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1840,
        784
      ]
    },
    {
      "id": "443d3528-a7a0-4e85-aa7a-b13ac5e50461",
      "name": "React with an emoji to a message1",
      "type": "n8n-nodes-base.discord",
      "position": [
        1600,
        784
      ]
    },
    {
      "id": "6a32aa65-e684-44cb-a588-d13befc03565",
      "name": "Trading Assistant Classifier & Responder3",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        3712,
        240
      ]
    },
    {
      "id": "4d27f814-0ddf-4807-9b7c-22bc40e4b265",
      "name": "If trade was successful1",
      "type": "n8n-nodes-base.if",
      "position": [
        4000,
        1040
      ]
    },
    {
      "id": "93b3fc60-d293-4177-addd-ede90d9e3162",
      "name": "respond: success1",
      "type": "n8n-nodes-base.discord",
      "position": [
        4208,
        928
      ]
    },
    {
      "id": "f13a6ec3-421f-4a9d-9f48-aac525a79e2c",
      "name": "respond: failed1",
      "type": "n8n-nodes-base.discord",
      "position": [
        4208,
        1152
      ]
    },
    {
      "id": "52c5b9d7-1563-47ea-bd66-604ced1d8b5a",
      "name": "respond: error1",
      "type": "n8n-nodes-base.discord",
      "position": [
        4240,
        -16
      ]
    },
    {
      "id": "0f82c910-c6db-4748-a6b9-18a73eb6204d",
      "name": "Switch3",
      "type": "n8n-nodes-base.switch",
      "position": [
        3264,
        912
      ]
    },
    {
      "id": "b043d37d-5938-40eb-966c-4d227ef29d5a",
      "name": "HTTP Request send limit order",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        3728,
        1040
      ]
    },
    {
      "id": "f2043eaf-d9a9-474b-9bbd-d0edde382ff3",
      "name": "parse if AI says content is complete2",
      "type": "n8n-nodes-base.code",
      "position": [
        2480,
        240
      ]
    },
    {
      "id": "a8572c97-e33f-4d6d-b5c5-61bb83f8b6ce",
      "name": "needs LLM fallback?1",
      "type": "n8n-nodes-base.switch",
      "position": [
        2672,
        224
      ]
    },
    {
      "id": "023e56c7-8f8a-4a75-92c3-2b832dba2e44",
      "name": "respond: something is missing",
      "type": "n8n-nodes-base.discord",
      "position": [
        2848,
        352
      ]
    },
    {
      "id": "b7bb9116-774b-4483-9078-3489d2bf37a2",
      "name": "LLM fallback1",
      "type": "n8n-nodes-base.discord",
      "position": [
        3552,
        -80
      ]
    },
    {
      "id": "915e7946-b63c-42c3-aeea-5bcc2e23b1df",
      "name": "parse if AI says content is complete3",
      "type": "n8n-nodes-base.code",
      "position": [
        3136,
        32
      ]
    },
    {
      "id": "1c375d63-090c-4fdf-b6a8-66a9278cb190",
      "name": "basic LLM fallback check1",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        2848,
        32
      ]
    },
    {
      "id": "88b3e2fc-abb3-49fe-8580-0b56be7f3e8a",
      "name": "http error response1",
      "type": "n8n-nodes-base.discord",
      "position": [
        3520,
        1232
      ]
    },
    {
      "id": "88a056e1-e892-480d-8596-2a5984f6a800",
      "name": "parameters are missing?1",
      "type": "n8n-nodes-base.if",
      "position": [
        3344,
        32
      ]
    },
    {
      "id": "b18ceeae-5b62-456e-8821-3c579b3a616b",
      "name": "4o - mini1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2848,
        176
      ]
    },
    {
      "id": "931edefd-eea6-419a-8c3e-02e706ffc59b",
      "name": "If ai says complete1",
      "type": "n8n-nodes-base.if",
      "position": [
        3552,
        144
      ]
    },
    {
      "id": "db19659c-38f6-4981-a90a-1237c2dd5326",
      "name": "4o mini1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1968,
        1040
      ]
    },
    {
      "id": "0a9aef37-1c89-495a-84e2-e44ca6719acd",
      "name": "Parse switch output1",
      "type": "n8n-nodes-base.code",
      "position": [
        3520,
        944
      ]
    },
    {
      "id": "ce4b83d0-7905-49ce-adcf-31aa45114d5c",
      "name": "resond get signals2",
      "type": "n8n-nodes-base.discord",
      "position": [
        2928,
        1008
      ]
    },
    {
      "id": "01a4a472-7b34-459b-8805-6f0d4b066569",
      "name": "HTTP get pending signals1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2512,
        1104
      ]
    },
    {
      "id": "78a0e32b-9da2-4978-8f6b-574afdc06661",
      "name": "if there is signal1",
      "type": "n8n-nodes-base.if",
      "position": [
        2720,
        1104
      ]
    },
    {
      "id": "239aaf02-2b49-4f92-a366-25c6366856b4",
      "name": "resond get signals3",
      "type": "n8n-nodes-base.discord",
      "position": [
        2928,
        1184
      ]
    },
    {
      "id": "02a4ed30-81d5-4884-bb53-bb416c94732f",
      "name": "clear signals response1",
      "type": "n8n-nodes-base.discord",
      "position": [
        2704,
        1456
      ]
    },
    {
      "id": "26c18fca-ff4b-4ee2-a38d-1abebeb0c04f",
      "name": "Http req clear all signals1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2496,
        1456
      ]
    },
    {
      "id": "8753b4dd-d061-495d-aa09-8657bd069c77",
      "name": "4o mini3",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        3712,
        400
      ]
    },
    {
      "id": "c697a20f-2163-4d7a-acb0-9ac2d1564ad5",
      "name": "set credentials and params1",
      "type": "n8n-nodes-base.set",
      "position": [
        976,
        784
      ]
    },
    {
      "id": "45434b78-3864-4c28-8a07-c5f0a8324be3",
      "name": "only get user's message that has no reacts1",
      "type": "n8n-nodes-base.filter",
      "position": [
        1376,
        784
      ]
    },
    {
      "id": "65692b39-c8cf-4e0e-ae5a-937739db08eb",
      "name": "respond: query1",
      "type": "n8n-nodes-base.discord",
      "position": [
        2512,
        720
      ]
    },
    {
      "id": "54370283-dcc7-4099-b5d0-3d7e7a54ef45",
      "name": "respond: help instructions1",
      "type": "n8n-nodes-base.discord",
      "position": [
        2720,
        896
      ]
    },
    {
      "id": "4c52643c-035f-4cd2-b5ae-11f6e626a132",
      "name": "ai agent instructions1",
      "type": "n8n-nodes-base.set",
      "position": [
        2512,
        896
      ]
    },
    {
      "id": "1270b58f-afbd-43d5-846b-1afd7fd18e92",
      "name": "📋 Overview1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        320,
        -112
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "77b60990-b969-4cb7-a31c-6e07b2679ca3",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2432,
        608
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "ce258de0-b4cc-40e9-9957-afe260eac0fb",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2432,
        1376
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "27dad970-258c-4a8f-9e72-54e8ee705393",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        752,
        608
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "6e778919-7086-43d8-9525-6416b458dcfb",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1792,
        608
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "80abfda0-069b-4f26-bc3f-e7a1e998beb6",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2432,
        -112
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "b98ec184-c7d3-4b69-a777-2858fa66bcd6",
      "name": "Sticky Note14",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3216,
        608
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    },
    {
      "id": "56fae9fb-621c-4aa4-b0cb-75a770fb9abd",
      "name": "Sticky Note15",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        768,
        -112
      ],
      "parameters": {
        "width": null,
        "height": null,
        "content": ""
      }
    }
  ],
  "connections": {
    "Switch2": {
      "main": [
        [
          {
            "node": "parse if AI says content is complete2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "respond: query1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "respond: query1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "ai agent instructions1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "HTTP get pending signals1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Http req clear all signals1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch3": {
      "main": [
        [
          {
            "node": "HTTP Request send market order1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "HTTP Request send market order1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Parse switch output1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "HTTP Request send limit order",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "http error response1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4o mini1": {
      "ai_languageModel": [
        [
          {
            "node": "Trading Assistant Classifier & Responder2",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "4o mini3": {
      "ai_languageModel": [
        [
          {
            "node": "Trading Assistant Classifier & Responder3",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "4o - mini1": {
      "ai_languageModel": [
        [
          {
            "node": "basic LLM fallback check1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger1": {
      "main": [
        [
          {
            "node": "set credentials and params1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "parse LLM output1": {
      "main": [
        [
          {
            "node": "Switch2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "parse ai response1": {
      "main": [
        [
          {
            "node": "if there is an error1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "if there is signal1": {
      "main": [
        [
          {
            "node": "resond get signals2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "resond get signals3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If ai says complete1": {
      "main": [
        [
          {
            "node": "if there is an error1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Trading Assistant Classifier & Responder3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse switch output1": {
      "main": [
        [
          {
            "node": "HTTP Request send limit order",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "needs LLM fallback?1": {
      "main": [
        [
          {
            "node": "basic LLM fallback check1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Trading Assistant Classifier & Responder3",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "respond: something is missing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "if there is an error1": {
      "main": [
        [
          {
            "node": "respond: error1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Switch3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ai agent instructions1": {
      "main": [
        [
          {
            "node": "respond: help instructions1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If trade was successful1": {
      "main": [
        [
          {
            "node": "respond: success1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "respond: failed1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "parameters are missing?1": {
      "main": [
        [
          {
            "node": "LLM fallback1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "If ai says complete1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP get pending signals1": {
      "main": [
        [
          {
            "node": "if there is signal1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "basic LLM fallback check1": {
      "main": [
        [
          {
            "node": "parse if AI says content is complete3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get recent message - omni1": {
      "main": [
        [
          {
            "node": "only get user's message that has no reacts1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Http req clear all signals1": {
      "main": [
        [
          {
            "node": "clear signals response1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "set credentials and params1": {
      "main": [
        [
          {
            "node": "Get recent message - omni1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request send limit order": {
      "main": [
        [
          {
            "node": "If trade was successful1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HTTP Request send market order1": {
      "main": [
        [
          {
            "node": "If trade was successful1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "React with an emoji to a message1": {
      "main": [
        [
          {
            "node": "Trading Assistant Classifier & Responder2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "parse if AI says content is complete2": {
      "main": [
        [
          {
            "node": "needs LLM fallback?1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "parse if AI says content is complete3": {
      "main": [
        [
          {
            "node": "parameters are missing?1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trading Assistant Classifier & Responder2": {
      "main": [
        [
          {
            "node": "parse LLM output1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trading Assistant Classifier & Responder3": {
      "main": [
        [
          {
            "node": "parse ai response1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "only get user's message that has no reacts1": {
      "main": [
        [
          {
            "node": "React with an emoji to a message1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}