{"id":17,"date":"2026-04-18T21:51:30","date_gmt":"2026-04-18T21:51:30","guid":{"rendered":"https:\/\/amoali.com\/?page_id=17"},"modified":"2026-04-18T22:44:33","modified_gmt":"2026-04-18T22:44:33","slug":"panel-3","status":"publish","type":"page","link":"https:\/\/amoali.com\/?page_id=17","title":{"rendered":"panel"},"content":{"rendered":"\n<style>\n  :root{\n    --bg:#0f172a;\n    --card:#111827;\n    --card2:#0b1220;\n    --border:#263244;\n    --border2:#334155;\n    --text:#e5e7eb;\n    --muted:#94a3b8;\n    --primary:#2563eb;\n    --primary2:#1d4ed8;\n    --success:#22c55e;\n    --danger:#ef4444;\n    --shadow:0 20px 60px rgba(0,0,0,.25);\n    --radius:20px;\n  }\n\n  *{box-sizing:border-box}\n\n  .aa-bot-wrap{\n    max-width:1100px;\n    margin:20px auto;\n    padding:18px;\n    background:var(--bg);\n    color:var(--text);\n    border-radius:var(--radius);\n    box-shadow:var(--shadow);\n    font-family:Arial,sans-serif;\n    overflow:hidden;\n  }\n\n  .aa-bot-wrap[dir=\"rtl\"]{\n    font-family:Tahoma, Arial, sans-serif;\n  }\n\n  .aa-bot-header{\n    display:flex;\n    justify-content:space-between;\n    align-items:flex-start;\n    gap:16px;\n    margin-bottom:20px;\n    flex-wrap:wrap;\n  }\n\n  .aa-bot-title h1{\n    margin:0;\n    font-size:clamp(24px, 4vw, 34px);\n    color:#fff;\n    line-height:1.2;\n  }\n\n  .aa-bot-title p{\n    margin:8px 0 0;\n    color:var(--muted);\n    font-size:14px;\n    line-height:1.7;\n  }\n\n  .aa-top-controls{\n    display:flex;\n    gap:10px;\n    align-items:center;\n    flex-wrap:wrap;\n  }\n\n  .aa-lang-select,\n  .aa-top-pill{\n    background:var(--card);\n    border:1px solid var(--border2);\n    color:var(--text);\n    border-radius:999px;\n    padding:10px 14px;\n    font-size:13px;\n  }\n\n  .aa-lang-select{\n    cursor:pointer;\n    min-width:130px;\n  }\n\n  .aa-top-pill{\n    display:inline-flex;\n    align-items:center;\n    gap:8px;\n  }\n\n  .aa-status-dot{\n    width:10px;\n    height:10px;\n    border-radius:50%;\n    background:var(--success);\n    box-shadow:0 0 12px var(--success);\n    flex:0 0 auto;\n  }\n\n  .aa-grid{\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n    gap:16px;\n  }\n\n  @media (max-width: 900px){\n    .aa-grid{grid-template-columns:1fr}\n  }\n\n  .aa-card{\n    background:rgba(17,24,39,.78);\n    backdrop-filter:blur(10px);\n    border:1px solid #1f2937;\n    border-radius:18px;\n    padding:18px;\n    min-width:0;\n  }\n\n  .aa-card h3{\n    margin:0 0 12px;\n    font-size:18px;\n    color:#fff;\n    line-height:1.4;\n  }\n\n  .aa-card-sub{\n    color:var(--muted);\n    font-size:13px;\n    margin:-4px 0 14px;\n    line-height:1.7;\n  }\n\n  .aa-toggle-grid{\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n    gap:10px;\n  }\n\n  @media (max-width: 560px){\n    .aa-toggle-grid{grid-template-columns:1fr}\n  }\n\n  .aa-option input{display:none}\n\n  .aa-option label{\n    display:flex;\n    align-items:center;\n    justify-content:space-between;\n    gap:10px;\n    cursor:pointer;\n    background:var(--card2);\n    border:1px solid var(--border);\n    border-radius:14px;\n    padding:14px 16px;\n    transition:.2s ease;\n    color:#cbd5e1;\n    font-size:14px;\n    min-height:52px;\n  }\n\n  .aa-option label:hover{\n    border-color:#3b82f6;\n    transform:translateY(-1px);\n  }\n\n  .aa-option input:checked + label{\n    border-color:#3b82f6;\n    background:rgba(59,130,246,.12);\n    color:#fff;\n    box-shadow:0 0 0 1px rgba(59,130,246,.25) inset;\n  }\n\n  .aa-chip{\n    display:inline-flex;\n    align-items:center;\n    justify-content:center;\n    min-width:28px;\n    padding:3px 9px;\n    border-radius:999px;\n    background:#1f2937;\n    color:var(--muted);\n    font-size:12px;\n    white-space:nowrap;\n    flex:0 0 auto;\n  }\n\n  .aa-option input:checked + label .aa-chip{\n    background:var(--primary);\n    color:#fff;\n  }\n\n  .aa-settings{\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n    gap:14px;\n  }\n\n  @media (max-width: 640px){\n    .aa-settings{grid-template-columns:1fr}\n  }\n\n  .aa-field{\n    display:flex;\n    flex-direction:column;\n    gap:8px;\n    min-width:0;\n  }\n\n  .aa-field label{\n    font-size:13px;\n    color:var(--muted);\n    line-height:1.5;\n  }\n\n  .aa-field input,\n  .aa-field select{\n    width:100%;\n    min-width:0;\n    background:var(--card2);\n    border:1px solid var(--border);\n    color:#fff;\n    border-radius:12px;\n    padding:12px 14px;\n    font-size:14px;\n  }\n\n  .aa-live-toggle{\n    display:flex;\n    align-items:center;\n    justify-content:space-between;\n    gap:16px;\n    background:var(--card2);\n    border:1px solid var(--border);\n    border-radius:14px;\n    padding:14px 16px;\n    margin-top:16px;\n    flex-wrap:wrap;\n  }\n\n  .aa-live-label{\n    min-width:0;\n    flex:1 1 220px;\n  }\n\n  .aa-live-label strong{\n    display:block;\n    color:#fff;\n    margin-bottom:4px;\n    line-height:1.4;\n  }\n\n  .aa-mini{\n    color:var(--muted);\n    font-size:12px;\n    line-height:1.6;\n  }\n\n  .aa-switch{\n    position:relative;\n    width:54px;\n    height:30px;\n    display:inline-block;\n    flex:0 0 auto;\n  }\n\n  .aa-switch input{display:none}\n\n  .aa-slider{\n    position:absolute;\n    inset:0;\n    background:#334155;\n    border-radius:999px;\n    transition:.2s ease;\n  }\n\n  .aa-slider:before{\n    content:\"\";\n    position:absolute;\n    width:22px;\n    height:22px;\n    left:4px;\n    top:4px;\n    background:#fff;\n    border-radius:50%;\n    transition:.2s ease;\n  }\n\n  .aa-switch input:checked + .aa-slider{\n    background:var(--success);\n  }\n\n  .aa-switch input:checked + .aa-slider:before{\n    transform:translateX(24px);\n  }\n\n  .aa-actions{\n    display:flex;\n    gap:12px;\n    align-items:center;\n    justify-content:flex-end;\n    margin-top:20px;\n    flex-wrap:wrap;\n  }\n\n  .aa-btn{\n    border:none;\n    border-radius:14px;\n    padding:13px 18px;\n    font-size:14px;\n    cursor:pointer;\n    transition:.2s ease;\n    min-height:46px;\n  }\n\n  .aa-btn:disabled{\n    opacity:.7;\n    cursor:not-allowed;\n  }\n\n  .aa-btn-primary{\n    background:var(--primary);\n    color:#fff;\n  }\n\n  .aa-btn-primary:hover{\n    background:var(--primary2);\n  }\n\n  .aa-btn-secondary{\n    background:#1f2937;\n    color:var(--text);\n    border:1px solid var(--border2);\n  }\n\n  .aa-btn-secondary:hover{\n    background:#111827;\n  }\n\n  .aa-response{\n    margin-top:18px;\n    padding:14px 16px;\n    border-radius:14px;\n    font-size:14px;\n    display:none;\n    white-space:pre-wrap;\n    line-height:1.7;\n    word-break:break-word;\n  }\n\n  .aa-response.ok{\n    display:block;\n    background:rgba(34,197,94,.12);\n    border:1px solid rgba(34,197,94,.35);\n    color:#dcfce7;\n  }\n\n  .aa-response.err{\n    display:block;\n    background:rgba(239,68,68,.12);\n    border:1px solid rgba(239,68,68,.35);\n    color:#fee2e2;\n  }\n\n  #aa-summary{\n    line-height:1.9;\n    color:#cbd5e1;\n    word-break:break-word;\n  }\n\n  @media (max-width: 480px){\n    .aa-bot-wrap{\n      margin:10px;\n      padding:14px;\n      border-radius:16px;\n    }\n\n    .aa-card{\n      padding:14px;\n      border-radius:14px;\n    }\n\n    .aa-actions{\n      justify-content:stretch;\n    }\n\n    .aa-actions .aa-btn{\n      width:100%;\n    }\n\n    .aa-top-controls{\n      width:100%;\n    }\n\n    .aa-lang-select{\n      width:100%;\n    }\n  }\n<\/style>\n\n<div class=\"aa-bot-wrap\" id=\"aa-root\" dir=\"ltr\">\n  <div class=\"aa-bot-header\">\n    <div class=\"aa-bot-title\">\n      <h1 id=\"t-title\">\ud83d\ude80 Trading Bot Control Panel<\/h1>\n      <p id=\"t-subtitle\">Control timeframes, strategies, and bot settings from your website<\/p>\n    <\/div>\n\n    <div class=\"aa-top-controls\">\n      <select id=\"languageSwitcher\" class=\"aa-lang-select\" onchange=\"setLanguage(this.value)\">\n        <option value=\"en\">English<\/option>\n        <option value=\"de\">Deutsch<\/option>\n        <option value=\"fa\">\u0641\u0627\u0631\u0633\u06cc<\/option>\n      <\/select>\n\n      <div class=\"aa-top-pill\">\n        <span class=\"aa-status-dot\"><\/span>\n        <span id=\"t-connected\">Connected to n8n<\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"aa-grid\">\n    <div class=\"aa-card\">\n      <h3 id=\"t-timeframes-title\">\u23f1 Timeframes<\/h3>\n      <div class=\"aa-card-sub\" id=\"t-timeframes-sub\">Select the timeframes you want to enable<\/div>\n\n      <div class=\"aa-toggle-grid\">\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-1m\" value=\"1m\" data-group=\"timeframes\">\n          <label for=\"tf-1m\"><span data-i18n=\"tf_1m\">1 Minute<\/span><span class=\"aa-chip\">1m<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-5m\" value=\"5m\" data-group=\"timeframes\">\n          <label for=\"tf-5m\"><span data-i18n=\"tf_5m\">5 Minutes<\/span><span class=\"aa-chip\">5m<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-15m\" value=\"15m\" data-group=\"timeframes\">\n          <label for=\"tf-15m\"><span data-i18n=\"tf_15m\">15 Minutes<\/span><span class=\"aa-chip\">15m<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-1h\" value=\"1h\" data-group=\"timeframes\">\n          <label for=\"tf-1h\"><span data-i18n=\"tf_1h\">1 Hour<\/span><span class=\"aa-chip\">1h<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-4h\" value=\"4h\" data-group=\"timeframes\" checked>\n          <label for=\"tf-4h\"><span data-i18n=\"tf_4h\">4 Hours<\/span><span class=\"aa-chip\">4h<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"tf-1d\" value=\"1d\" data-group=\"timeframes\">\n          <label for=\"tf-1d\"><span data-i18n=\"tf_1d\">1 Day<\/span><span class=\"aa-chip\">1d<\/span><\/label>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"aa-card\">\n      <h3 id=\"t-strategies-title\">\ud83d\udcca Strategies<\/h3>\n      <div class=\"aa-card-sub\" id=\"t-strategies-sub\">Select the trading strategies to activate<\/div>\n\n      <div class=\"aa-toggle-grid\">\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"st-volume\" value=\"volume_spike\" data-group=\"strategies\" checked>\n          <label for=\"st-volume\"><span data-i18n=\"st_volume\">Volume Spike<\/span><span class=\"aa-chip\">VS<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"st-breakout\" value=\"breakout\" data-group=\"strategies\">\n          <label for=\"st-breakout\"><span data-i18n=\"st_breakout\">Breakout<\/span><span class=\"aa-chip\">BO<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"st-mean\" value=\"mean_reversion\" data-group=\"strategies\">\n          <label for=\"st-mean\"><span data-i18n=\"st_mean\">Mean Reversion<\/span><span class=\"aa-chip\">MR<\/span><\/label>\n        <\/div>\n        <div class=\"aa-option\">\n          <input type=\"checkbox\" id=\"st-trend\" value=\"trend_continuation\" data-group=\"strategies\">\n          <label for=\"st-trend\"><span data-i18n=\"st_trend\">Trend Continuation<\/span><span class=\"aa-chip\">TC<\/span><\/label>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"aa-card\">\n      <h3 id=\"t-settings-title\">\u2699\ufe0f Settings<\/h3>\n\n      <div class=\"aa-settings\">\n        <div class=\"aa-field\">\n          <label for=\"executionMode\" id=\"t-execution-mode\">Execution Mode<\/label>\n          <select id=\"executionMode\">\n            <option value=\"paper\">Paper<\/option>\n            <option value=\"live\">Live<\/option>\n          <\/select>\n        <\/div>\n\n        <div class=\"aa-field\">\n          <label for=\"marketVenue\" id=\"t-market-venue\">Market Venue<\/label>\n          <select id=\"marketVenue\">\n            <option value=\"spot\">Spot<\/option>\n            <option value=\"futures\">Futures<\/option>\n          <\/select>\n        <\/div>\n\n        <div class=\"aa-field\">\n          <label for=\"riskPerTrade\" id=\"t-risk-per-trade\">Risk Per Trade (%)<\/label>\n          <input type=\"number\" id=\"riskPerTrade\" min=\"0.1\" step=\"0.1\" value=\"1\">\n        <\/div>\n\n        <div class=\"aa-field\">\n          <label for=\"maxSignals\" id=\"t-max-signals\">Max Active Signals<\/label>\n          <input type=\"number\" id=\"maxSignals\" min=\"1\" step=\"1\" value=\"3\">\n        <\/div>\n      <\/div>\n\n      <div class=\"aa-live-toggle\">\n        <div class=\"aa-live-label\">\n          <strong id=\"t-auto-title\">Auto Trading<\/strong>\n          <div class=\"aa-mini\" id=\"t-auto-sub\">If enabled, the bot can execute automatically<\/div>\n        <\/div>\n\n        <label class=\"aa-switch\">\n          <input type=\"checkbox\" id=\"autoTrading\">\n          <span class=\"aa-slider\"><\/span>\n        <\/label>\n      <\/div>\n    <\/div>\n\n    <div class=\"aa-card\">\n      <h3 id=\"t-summary-title\">\ud83e\udde0 Summary<\/h3>\n      <div class=\"aa-card-sub\" id=\"t-summary-sub\">Live summary of the current configuration<\/div>\n      <div id=\"aa-summary\"><\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"aa-actions\">\n    <button class=\"aa-btn aa-btn-secondary\" type=\"button\" id=\"resetBtn\" onclick=\"resetBotPanel()\">Reset<\/button>\n    <button class=\"aa-btn aa-btn-primary\" type=\"button\" id=\"saveBtn\" onclick=\"sendConfig()\">\ud83d\udcbe Save &#038; Send to Bot<\/button>\n  <\/div>\n\n  <div id=\"aa-response\" class=\"aa-response\"><\/div>\n<\/div>\n\n<script>\n  const translations = {\n    en: {\n      dir: 'ltr',\n      title: '\ud83d\ude80 Trading Bot Control Panel',\n      subtitle: 'Control timeframes, strategies, and bot settings from your website',\n      connected: 'Connected to n8n',\n      timeframesTitle: '\u23f1 Timeframes',\n      timeframesSub: 'Select the timeframes you want to enable',\n      strategiesTitle: '\ud83d\udcca Strategies',\n      strategiesSub: 'Select the trading strategies to activate',\n      settingsTitle: '\u2699\ufe0f Settings',\n      summaryTitle: '\ud83e\udde0 Summary',\n      summarySub: 'Live summary of the current configuration',\n      executionMode: 'Execution Mode',\n      marketVenue: 'Market Venue',\n      riskPerTrade: 'Risk Per Trade (%)',\n      maxSignals: 'Max Active Signals',\n      autoTitle: 'Auto Trading',\n      autoSub: 'If enabled, the bot can execute automatically',\n      reset: 'Reset',\n      save: '\ud83d\udcbe Save & Send to Bot',\n      tf_1m: '1 Minute',\n      tf_5m: '5 Minutes',\n      tf_15m: '15 Minutes',\n      tf_1h: '1 Hour',\n      tf_4h: '4 Hours',\n      tf_1d: '1 Day',\n      st_volume: 'Volume Spike',\n      st_breakout: 'Breakout',\n      st_mean: 'Mean Reversion',\n      st_trend: 'Trend Continuation',\n      sum_timeframes: 'Timeframes',\n      sum_strategies: 'Strategies',\n      sum_auto: 'Auto Trading',\n      sum_exec: 'Execution Mode',\n      sum_market: 'Market Venue',\n      sum_risk: 'Risk Per Trade',\n      sum_max: 'Max Active Signals',\n      yes: 'ON',\n      no: 'OFF',\n      none: 'None',\n      sent: '\u2705 Config sent successfully',\n      failed: '\u274c Send failed'\n    },\n    de: {\n      dir: 'ltr',\n      title: '\ud83d\ude80 Trading-Bot Kontrollpanel',\n      subtitle: 'Steuere Zeitrahmen, Strategien und Bot-Einstellungen direkt \u00fcber deine Website',\n      connected: 'Mit n8n verbunden',\n      timeframesTitle: '\u23f1 Zeitrahmen',\n      timeframesSub: 'W\u00e4hle die Zeitrahmen aus, die aktiviert werden sollen',\n      strategiesTitle: '\ud83d\udcca Strategien',\n      strategiesSub: 'W\u00e4hle die Handelsstrategien aus, die aktiviert werden sollen',\n      settingsTitle: '\u2699\ufe0f Einstellungen',\n      summaryTitle: '\ud83e\udde0 \u00dcbersicht',\n      summarySub: 'Live-Zusammenfassung der aktuellen Konfiguration',\n      executionMode: 'Ausf\u00fchrungsmodus',\n      marketVenue: 'Markt-Typ',\n      riskPerTrade: 'Risiko pro Trade (%)',\n      maxSignals: 'Maximale aktive Signale',\n      autoTitle: 'Auto-Trading',\n      autoSub: 'Wenn aktiviert, darf der Bot automatisch ausf\u00fchren',\n      reset: 'Zur\u00fccksetzen',\n      save: '\ud83d\udcbe Speichern & an Bot senden',\n      tf_1m: '1 Minute',\n      tf_5m: '5 Minuten',\n      tf_15m: '15 Minuten',\n      tf_1h: '1 Stunde',\n      tf_4h: '4 Stunden',\n      tf_1d: '1 Tag',\n      st_volume: 'Volumen-Spike',\n      st_breakout: 'Breakout',\n      st_mean: 'Mean Reversion',\n      st_trend: 'Trendfortsetzung',\n      sum_timeframes: 'Zeitrahmen',\n      sum_strategies: 'Strategien',\n      sum_auto: 'Auto-Trading',\n      sum_exec: 'Ausf\u00fchrungsmodus',\n      sum_market: 'Markt-Typ',\n      sum_risk: 'Risiko pro Trade',\n      sum_max: 'Maximale aktive Signale',\n      yes: 'AN',\n      no: 'AUS',\n      none: 'Keine',\n      sent: '\u2705 Konfiguration erfolgreich gesendet',\n      failed: '\u274c Senden fehlgeschlagen'\n    },\n    fa: {\n      dir: 'rtl',\n      title: '\ud83d\ude80 \u067e\u0646\u0644 \u06a9\u0646\u062a\u0631\u0644 \u0631\u0628\u0627\u062a \u062a\u0631\u06cc\u062f',\n      subtitle: '\u06a9\u0646\u062a\u0631\u0644 \u062a\u0627\u06cc\u0645\u200c\u0641\u0631\u06cc\u0645\u200c\u0647\u0627\u060c \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc\u200c\u0647\u0627 \u0648 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0631\u0628\u0627\u062a \u0627\u0632 \u062f\u0627\u062e\u0644 \u0633\u0627\u06cc\u062a',\n      connected: '\u0645\u062a\u0635\u0644 \u0628\u0647 n8n',\n      timeframesTitle: '\u23f1 \u062a\u0627\u06cc\u0645\u200c\u0641\u0631\u06cc\u0645\u200c\u0647\u0627',\n      timeframesSub: '\u062a\u0627\u06cc\u0645\u200c\u0641\u0631\u06cc\u0645\u200c\u0647\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u06cc\u200c\u062e\u0648\u0627\u0647\u06cc \u0641\u0639\u0627\u0644 \u0634\u0648\u0646\u062f \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646',\n      strategiesTitle: '\ud83d\udcca \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc\u200c\u0647\u0627',\n      strategiesSub: '\u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc\u200c\u0647\u0627\u06cc \u0645\u0639\u0627\u0645\u0644\u0627\u062a\u06cc \u0641\u0639\u0627\u0644 \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646',\n      settingsTitle: '\u2699\ufe0f \u062a\u0646\u0638\u06cc\u0645\u0627\u062a',\n      summaryTitle: '\ud83e\udde0 \u062e\u0644\u0627\u0635\u0647',\n      summarySub: '\u062e\u0644\u0627\u0635\u0647 \u0632\u0646\u062f\u0647 \u0627\u0632 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0641\u0639\u0644\u06cc',\n      executionMode: '\u062d\u0627\u0644\u062a \u0627\u062c\u0631\u0627',\n      marketVenue: '\u0646\u0648\u0639 \u0628\u0627\u0632\u0627\u0631',\n      riskPerTrade: '\u0631\u06cc\u0633\u06a9 \u0647\u0631 \u0645\u0639\u0627\u0645\u0644\u0647 (%)',\n      maxSignals: '\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u06cc\u06af\u0646\u0627\u0644 \u0641\u0639\u0627\u0644',\n      autoTitle: '\u0645\u0639\u0627\u0645\u0644\u0647 \u062e\u0648\u062f\u06a9\u0627\u0631',\n      autoSub: '\u0627\u06af\u0631 \u0631\u0648\u0634\u0646 \u0628\u0627\u0634\u062f\u060c \u0631\u0628\u0627\u062a \u0627\u062c\u0627\u0632\u0647 \u0627\u062c\u0631\u0627\u06cc \u062e\u0648\u062f\u06a9\u0627\u0631 \u062f\u0627\u0631\u062f',\n      reset: '\u0628\u0627\u0632\u0646\u0634\u0627\u0646\u06cc',\n      save: '\ud83d\udcbe \u0630\u062e\u06cc\u0631\u0647 \u0648 \u0627\u0631\u0633\u0627\u0644 \u0628\u0647 \u0631\u0628\u0627\u062a',\n      tf_1m: '\u06f1 \u062f\u0642\u06cc\u0642\u0647',\n      tf_5m: '\u06f5 \u062f\u0642\u06cc\u0642\u0647',\n      tf_15m: '\u06f1\u06f5 \u062f\u0642\u06cc\u0642\u0647',\n      tf_1h: '\u06f1 \u0633\u0627\u0639\u062a',\n      tf_4h: '\u06f4 \u0633\u0627\u0639\u062a',\n      tf_1d: '\u06f1 \u0631\u0648\u0632',\n      st_volume: '\u0627\u0633\u067e\u0627\u06cc\u06a9 \u062d\u062c\u0645',\n      st_breakout: '\u0628\u0631\u06cc\u06a9\u200c\u0627\u0648\u062a',\n      st_mean: '\u0628\u0627\u0632\u06af\u0634\u062a \u0628\u0647 \u0645\u06cc\u0627\u0646\u06af\u06cc\u0646',\n      st_trend: '\u0627\u062f\u0627\u0645\u0647 \u0631\u0648\u0646\u062f',\n      sum_timeframes: '\u062a\u0627\u06cc\u0645\u200c\u0641\u0631\u06cc\u0645\u200c\u0647\u0627',\n      sum_strategies: '\u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc\u200c\u0647\u0627',\n      sum_auto: '\u0645\u0639\u0627\u0645\u0644\u0647 \u062e\u0648\u062f\u06a9\u0627\u0631',\n      sum_exec: '\u062d\u0627\u0644\u062a \u0627\u062c\u0631\u0627',\n      sum_market: '\u0646\u0648\u0639 \u0628\u0627\u0632\u0627\u0631',\n      sum_risk: '\u0631\u06cc\u0633\u06a9 \u0647\u0631 \u0645\u0639\u0627\u0645\u0644\u0647',\n      sum_max: '\u062d\u062f\u0627\u06a9\u062b\u0631 \u0633\u06cc\u06af\u0646\u0627\u0644 \u0641\u0639\u0627\u0644',\n      yes: '\u0631\u0648\u0634\u0646',\n      no: '\u062e\u0627\u0645\u0648\u0634',\n      none: '\u0647\u06cc\u0686\u200c\u06a9\u062f\u0627\u0645',\n      sent: '\u2705 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0627\u0631\u0633\u0627\u0644 \u0634\u062f',\n      failed: '\u274c \u0627\u0631\u0633\u0627\u0644 \u0646\u0627\u0645\u0648\u0641\u0642 \u0628\u0648\u062f'\n    }\n  };\n\n  let currentLang = localStorage.getItem('panel_lang') || 'en';\n\n  function getCheckedValues(groupName) {\n    return Array.from(document.querySelectorAll(`input[data-group=\"${groupName}\"]:checked`)).map(el => el.value);\n  }\n\n  function t(key) {\n    return translations[currentLang][key] ?? key;\n  }\n\n  function setLanguage(lang) {\n    currentLang = lang;\n    localStorage.setItem('panel_lang', lang);\n\n    const root = document.getElementById('aa-root');\n    root.setAttribute('dir', translations[lang].dir);\n\n    document.getElementById('t-title').textContent = t('title');\n    document.getElementById('t-subtitle').textContent = t('subtitle');\n    document.getElementById('t-connected').textContent = t('connected');\n    document.getElementById('t-timeframes-title').textContent = t('timeframesTitle');\n    document.getElementById('t-timeframes-sub').textContent = t('timeframesSub');\n    document.getElementById('t-strategies-title').textContent = t('strategiesTitle');\n    document.getElementById('t-strategies-sub').textContent = t('strategiesSub');\n    document.getElementById('t-settings-title').textContent = t('settingsTitle');\n    document.getElementById('t-summary-title').textContent = t('summaryTitle');\n    document.getElementById('t-summary-sub').textContent = t('summarySub');\n    document.getElementById('t-execution-mode').textContent = t('executionMode');\n    document.getElementById('t-market-venue').textContent = t('marketVenue');\n    document.getElementById('t-risk-per-trade').textContent = t('riskPerTrade');\n    document.getElementById('t-max-signals').textContent = t('maxSignals');\n    document.getElementById('t-auto-title').textContent = t('autoTitle');\n    document.getElementById('t-auto-sub').textContent = t('autoSub');\n    document.getElementById('resetBtn').textContent = t('reset');\n    document.getElementById('saveBtn').textContent = t('save');\n\n    document.querySelector('[data-i18n=\"tf_1m\"]').textContent = t('tf_1m');\n    document.querySelector('[data-i18n=\"tf_5m\"]').textContent = t('tf_5m');\n    document.querySelector('[data-i18n=\"tf_15m\"]').textContent = t('tf_15m');\n    document.querySelector('[data-i18n=\"tf_1h\"]').textContent = t('tf_1h');\n    document.querySelector('[data-i18n=\"tf_4h\"]').textContent = t('tf_4h');\n    document.querySelector('[data-i18n=\"tf_1d\"]').textContent = t('tf_1d');\n    document.querySelector('[data-i18n=\"st_volume\"]').textContent = t('st_volume');\n    document.querySelector('[data-i18n=\"st_breakout\"]').textContent = t('st_breakout');\n    document.querySelector('[data-i18n=\"st_mean\"]').textContent = t('st_mean');\n    document.querySelector('[data-i18n=\"st_trend\"]').textContent = t('st_trend');\n\n    document.getElementById('languageSwitcher').value = lang;\n    renderSummary();\n  }\n\n  function renderSummary() {\n    const timeframes = getCheckedValues('timeframes');\n    const strategies = getCheckedValues('strategies');\n    const autoTrading = document.getElementById('autoTrading').checked;\n    const executionMode = document.getElementById('executionMode').value;\n    const marketVenue = document.getElementById('marketVenue').value;\n    const riskPerTrade = document.getElementById('riskPerTrade').value;\n    const maxSignals = document.getElementById('maxSignals').value;\n\n    document.getElementById('aa-summary').innerHTML = `\n      <strong>${t('sum_timeframes')}:<\/strong> ${timeframes.length ? timeframes.join(', ') : t('none')}<br>\n      <strong>${t('sum_strategies')}:<\/strong> ${strategies.length ? strategies.join(', ') : t('none')}<br>\n      <strong>${t('sum_auto')}:<\/strong> ${autoTrading ? t('yes') : t('no')}<br>\n      <strong>${t('sum_exec')}:<\/strong> ${executionMode}<br>\n      <strong>${t('sum_market')}:<\/strong> ${marketVenue}<br>\n      <strong>${t('sum_risk')}:<\/strong> ${riskPerTrade}%<br>\n      <strong>${t('sum_max')}:<\/strong> ${maxSignals}\n    `;\n  }\n\n  function saveToLocal(data) {\n    localStorage.setItem('bot_config', JSON.stringify(data));\n  }\n\n  function loadFromLocal() {\n    const raw = localStorage.getItem('bot_config');\n    if (!raw) return;\n\n    const config = JSON.parse(raw);\n\n    document.querySelectorAll('input[data-group=\"timeframes\"], input[data-group=\"strategies\"]').forEach(el => {\n      el.checked = false;\n    });\n\n    (config.timeframes || []).forEach(v => {\n      const el = document.querySelector(`input[data-group=\"timeframes\"][value=\"${v}\"]`);\n      if (el) el.checked = true;\n    });\n\n    (config.strategies || []).forEach(v => {\n      const el = document.querySelector(`input[data-group=\"strategies\"][value=\"${v}\"]`);\n      if (el) el.checked = true;\n    });\n\n    document.getElementById('autoTrading').checked = !!config.autoTrading;\n    document.getElementById('executionMode').value = config.executionMode || 'paper';\n    document.getElementById('marketVenue').value = config.marketVenue || 'spot';\n    document.getElementById('riskPerTrade').value = config.riskPerTrade ?? 1;\n    document.getElementById('maxSignals').value = config.maxSignals ?? 3;\n  }\n\n  async function sendConfig() {\n    const btn = document.getElementById('saveBtn');\n    btn.disabled = true;\n    btn.textContent = 'Sending...';\n\n    const payload = {\n      timeframes: getCheckedValues('timeframes'),\n      strategies: getCheckedValues('strategies'),\n      autoTrading: document.getElementById('autoTrading').checked,\n      executionMode: document.getElementById('executionMode').value,\n      marketVenue: document.getElementById('marketVenue').value,\n      riskPerTrade: Number(document.getElementById('riskPerTrade').value || 1),\n      maxSignals: Number(document.getElementById('maxSignals').value || 3),\n      language: currentLang\n    };\n\n    saveToLocal(payload);\n\n    const box = document.getElementById('aa-response');\n    box.className = 'aa-response';\n    box.style.display = 'none';\n\n    try {\n      const res = await fetch('https:\/\/n8n.amoali.com\/webhook\/bot-config', {\n        method: 'POST',\n        headers: { 'Content-Type': 'application\/json' },\n        body: JSON.stringify(payload)\n      });\n\n      const text = await res.text();\n\n      box.className = 'aa-response ok';\n      box.innerText = `${t('sent')}\\nStatus: ${res.status}\\nResponse: ${text || 'OK'}`;\n    } catch (err) {\n      box.className = 'aa-response err';\n      box.innerText = `${t('failed')}\\n${err.message}`;\n    } finally {\n      btn.disabled = false;\n      btn.textContent = t('save');\n    }\n  }\n\n  function resetBotPanel() {\n    document.querySelectorAll('input[data-group=\"timeframes\"], input[data-group=\"strategies\"]').forEach(el => {\n      el.checked = false;\n    });\n\n    document.getElementById('tf-4h').checked = true;\n    document.getElementById('st-volume').checked = true;\n    document.getElementById('autoTrading').checked = false;\n    document.getElementById('executionMode').value = 'paper';\n    document.getElementById('marketVenue').value = 'spot';\n    document.getElementById('riskPerTrade').value = 1;\n    document.getElementById('maxSignals').value = 3;\n\n    renderSummary();\n\n    const box = document.getElementById('aa-response');\n    box.className = 'aa-response';\n    box.style.display = 'none';\n    box.innerText = '';\n  }\n\n  document.querySelectorAll('input[data-group], #autoTrading, #executionMode, #marketVenue, #riskPerTrade, #maxSignals')\n    .forEach(el => {\n      el.addEventListener('change', renderSummary);\n      el.addEventListener('input', renderSummary);\n    });\n\n  loadFromLocal();\n  setLanguage(currentLang);\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\ud83d\ude80 Trading Bot Control Panel Control timeframes, strategies, and bot settings from your website EnglishDeutsch\u0641\u0627\u0631\u0633\u06cc Connected to n8n \u23f1 Timeframes Select the timeframes you want to enable 1 Minute1m 5 Minutes5m 15 Minutes15m 1 Hour1h 4 Hours4h 1 Day1d \ud83d\udcca Strategies Select the trading strategies to activate Volume SpikeVS BreakoutBO Mean ReversionMR Trend ContinuationTC \u2699\ufe0f [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-17","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/pages\/17","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/amoali.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=17"}],"version-history":[{"count":5,"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/pages\/17\/revisions"}],"predecessor-version":[{"id":23,"href":"https:\/\/amoali.com\/index.php?rest_route=\/wp\/v2\/pages\/17\/revisions\/23"}],"wp:attachment":[{"href":"https:\/\/amoali.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=17"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}