beast-agent 2.76.5 → 2.77.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/agent/bots.js +669 -664
- package/src/agent/customtools.js +6 -19
- package/src/agent/engine.js +55 -307
- package/src/agent/seeds/tool-yazma/SKILL.md +13 -16
- package/src/agent/skills.js +14 -35
- package/src/agent/supertonic.js +622 -0
- package/src/agent/tools.js +3 -7
- package/src/main.js +77 -6068
- package/src/preload.js +2 -17
- package/src/renderer/i18n.js +14 -8
- package/src/renderer/index.html +0 -297
- package/src/renderer/renderer.js +142 -2280
- package/src/renderer/style.css +3 -825
- package/src/agent/defaulttools/mt5_barlar2/run.js +0 -188
- package/src/agent/defaulttools/mt5_barlar2/tool.json +0 -23
- package/src/agent/defaulttools/mt5_bekleyen/run.js +0 -105
- package/src/agent/defaulttools/mt5_bekleyen/tool.json +0 -18
- package/src/agent/defaulttools/mt5_durum/run.js +0 -93
- package/src/agent/defaulttools/mt5_durum/tool.json +0 -10
- package/src/agent/defaulttools/mt5_emir/run.js +0 -98
- package/src/agent/defaulttools/mt5_emir/tool.json +0 -17
- package/src/agent/defaulttools/mt5_emir_iptal/run.js +0 -90
- package/src/agent/defaulttools/mt5_emir_iptal/tool.json +0 -12
- package/src/agent/defaulttools/mt5_fiyat/run.js +0 -87
- package/src/agent/defaulttools/mt5_fiyat/tool.json +0 -16
- package/src/agent/defaulttools/mt5_gecmis/run.js +0 -87
- package/src/agent/defaulttools/mt5_gecmis/tool.json +0 -12
- package/src/agent/defaulttools/mt5_kapat/run.js +0 -108
- package/src/agent/defaulttools/mt5_kapat/tool.json +0 -15
- package/src/agent/defaulttools/mt5_m15_m5/m15m5.py +0 -60
- package/src/agent/defaulttools/mt5_m15_m5/run.js +0 -73
- package/src/agent/defaulttools/mt5_m15_m5/tool.json +0 -10
- package/src/agent/defaulttools/mt5_pozisyon_gecmis/run.js +0 -144
- package/src/agent/defaulttools/mt5_pozisyon_gecmis/tool.json +0 -12
- package/src/agent/defaulttools/mt5_shot/run.js +0 -649
- package/src/agent/defaulttools/mt5_shot/stitch.js +0 -151
- package/src/agent/defaulttools/mt5_shot/tool.json +0 -25
- package/src/agent/defaulttools/mt5_sltp/run.js +0 -92
- package/src/agent/defaulttools/mt5_sltp/tool.json +0 -14
- package/src/agent/financetools.js +0 -1025
- package/src/agent/finindicators.js +0 -254
- package/src/agent/finrisk.js +0 -289
- package/src/agent/finstats.js +0 -239
- package/src/agent/finwatch.js +0 -302
- package/src/agent/mt5/BeastFinance.mq5 +0 -498
- package/src/agent/mt5/BeastShot.tpl +0 -0
- package/src/agent/mt5setup.js +0 -542
- package/src/agent/scripts/mt5_bridge.py +0 -575
- package/src/agent/seeds/haber-duygu/SKILL.md +0 -49
- package/src/agent/seeds/mql5/SKILL.md +0 -154
- package/src/agent/seeds/price-action/SKILL.md +0 -60
- package/src/agent/seeds/risk-yonetimi/SKILL.md +0 -52
- package/src/mt5bridge.js +0 -215
package/src/preload.js
CHANGED
|
@@ -119,23 +119,6 @@ contextBridge.exposeInMainWorld('beast', {
|
|
|
119
119
|
studioPickVideo: () => ipcRenderer.invoke('studio:pickvideo'),
|
|
120
120
|
studioDelete: (rel) => ipcRenderer.invoke('studio:delete', rel),
|
|
121
121
|
|
|
122
|
-
financeState: () => ipcRenderer.invoke('finance:state'),
|
|
123
|
-
financeSnapshot: () => ipcRenderer.invoke('finance:snapshot'),
|
|
124
|
-
financeAlertsList: () => ipcRenderer.invoke('finance:alerts'),
|
|
125
|
-
financeAlertRemove: (id) => ipcRenderer.invoke('finance:alerts:remove', id),
|
|
126
|
-
financeMode: (on, sessionId) => ipcRenderer.invoke('finance:mode', { on, sessionId }),
|
|
127
|
-
financeSettings: (patch) => ipcRenderer.invoke('finance:settings', patch),
|
|
128
|
-
financeTraderStart: () => ipcRenderer.invoke('finance:trader:start'),
|
|
129
|
-
financeTraderStop: () => ipcRenderer.invoke('finance:trader:stop'),
|
|
130
|
-
financeAgentSpawn: (symbol) => ipcRenderer.invoke('finance:agent:spawn', { symbol }),
|
|
131
|
-
financeConnect: () => ipcRenderer.invoke('finance:connect'),
|
|
132
|
-
financeClose: (ticket, volume) => ipcRenderer.invoke('finance:close', { ticket, volume }),
|
|
133
|
-
financeCancel: (ticket) => ipcRenderer.invoke('finance:cancel', { ticket }),
|
|
134
|
-
financeInstall: () => ipcRenderer.invoke('finance:install'),
|
|
135
|
-
financeMt5Setup: () => ipcRenderer.invoke('finance:mt5:setup'),
|
|
136
|
-
financeSymbolsList: (filter) => ipcRenderer.invoke('finance:symbols:list', filter),
|
|
137
|
-
financeReport: () => ipcRenderer.invoke('finance:report'),
|
|
138
|
-
financeLearn: (payload) => ipcRenderer.invoke('finance:learn', payload),
|
|
139
122
|
clipRead: () => ipcRenderer.invoke('clip:read'),
|
|
140
123
|
clipWrite: (t) => ipcRenderer.invoke('clip:write', t),
|
|
141
124
|
thinkSet: (v) => ipcRenderer.invoke('think:set', v),
|
|
@@ -218,6 +201,8 @@ contextBridge.exposeInMainWorld('beast', {
|
|
|
218
201
|
waSetTts: (cfg) => ipcRenderer.invoke('wa:tts:set', cfg),
|
|
219
202
|
piperStatus: (voice) => ipcRenderer.invoke('piper:status', voice),
|
|
220
203
|
piperInstall: (voice) => ipcRenderer.invoke('piper:install', voice),
|
|
204
|
+
supertonicStatus: (voice) => ipcRenderer.invoke('supertonic:status', voice),
|
|
205
|
+
supertonicInstall: (voice) => ipcRenderer.invoke('supertonic:install', voice),
|
|
221
206
|
waGetGroups: () => ipcRenderer.invoke('wa:groups:get'),
|
|
222
207
|
waSetGroups: (cfg) => ipcRenderer.invoke('wa:groups:set', cfg),
|
|
223
208
|
tgGetStatus: () => ipcRenderer.invoke('tg:status:get'),
|
package/src/renderer/i18n.js
CHANGED
|
@@ -280,7 +280,7 @@
|
|
|
280
280
|
stt_engine_local: 'Whisper — yerel/offline (large-v3-turbo)',
|
|
281
281
|
stt_engine_groq: 'Groq Whisper — bulut (hızlı)',
|
|
282
282
|
stt_engine_openai: 'OpenAI-uyumlu Whisper — bulut',
|
|
283
|
-
tts_note: 'Edge TTS: ücretsiz bulut motoru — anahtar gerekmez (Ahmet/Emel vb.). Piper: tamamen yerel/offline neural motor (ilk kullanımda ~80MB indirir). OpenAI motoru: uyumlu speech API (tts-1, tts-1-hd; sesler alloy, echo, fable, onyx, nova, shimmer).',
|
|
283
|
+
tts_note: 'Edge TTS: ücretsiz bulut motoru — anahtar gerekmez (Ahmet/Emel vb.). Piper: tamamen yerel/offline neural motor (ilk kullanımda ~80MB indirir). Supertonic: tamamen yerel/offline neural motor — 31 dil, 10 hazır ses (ilk kullanımda ~400MB indirir). OpenAI motoru: uyumlu speech API (tts-1, tts-1-hd; sesler alloy, echo, fable, onyx, nova, shimmer).',
|
|
284
284
|
tts_engine: 'Motor',
|
|
285
285
|
tts_edge_voice: 'Edge sesi',
|
|
286
286
|
tts_piper_voice: 'Piper sesi',
|
|
@@ -288,6 +288,9 @@
|
|
|
288
288
|
tts_piper_speed: 'Konuşma hızı',
|
|
289
289
|
tts_piper_silence: 'Cümle sonu duraklama',
|
|
290
290
|
tts_piper_noise: 'İfade (doğallık)',
|
|
291
|
+
tts_supertonic_download: 'Supertonic\'i indir / hazırla',
|
|
292
|
+
tts_supertonic_speed: 'Konuşma hızı',
|
|
293
|
+
tts_supertonic_quality: 'Kalite (difüzyon adımı)',
|
|
291
294
|
tts_chat_auto: 'Chat\'te ajanın yazdıklarını otomatik seslendir',
|
|
292
295
|
tts_on: 'TTS açık — cevaplar sesli de gider',
|
|
293
296
|
tts_off: 'TTS kapalı',
|
|
@@ -660,7 +663,7 @@
|
|
|
660
663
|
store_name_label: 'Skill adı',
|
|
661
664
|
store_desc_label: 'Açıklama',
|
|
662
665
|
store_tags_label: 'Etiketler (virgülle, en fazla 4)',
|
|
663
|
-
store_tags_ph: 'örn:
|
|
666
|
+
store_tags_ph: 'örn: araştırma, ocr, eğitim',
|
|
664
667
|
store_files_label: 'Dosyalar',
|
|
665
668
|
store_commit: 'Mağazaya Yükle',
|
|
666
669
|
store_commit_ok: 'Skill mağazaya yüklendi — Trending listesinde!',
|
|
@@ -755,7 +758,7 @@
|
|
|
755
758
|
mail_need_to: 'Alıcı adresi gerekli',
|
|
756
759
|
/* TypeSafe (System One / Jev) */
|
|
757
760
|
ts_h2: 'TypeSafe (System One · Jev)',
|
|
758
|
-
ts_sub: 'Tipli karar motoru: metin üretmeden olasılıklı yanıt (noul/choice/score).
|
|
761
|
+
ts_sub: 'Tipli karar motoru: metin üretmeden olasılıklı yanıt (noul/choice/score). Anahtar kayıtlıysa ajanlar tipli kararlarını typesafe_decision aracıyla buradan alabilir. Diğer ajanlar ve sohbet etkilenmez.',
|
|
759
762
|
ts_key_label: 'TypeSafe API anahtarı (typesafe.ai)',
|
|
760
763
|
ts_model_label: 'Model (varsayılan: jev-latest)',
|
|
761
764
|
ts_enabled_label: 'TypeSafe açık (browser_agent/T3SFast + typesafe_decision kullanılabilir)',
|
|
@@ -772,7 +775,7 @@
|
|
|
772
775
|
ts_saved_toast: 'TypeSafe anahtarı kaydedildi',
|
|
773
776
|
ts_cleared_toast: 'TypeSafe anahtarı silindi',
|
|
774
777
|
ts_fail_toast: 'TypeSafe kaydedilemedi',
|
|
775
|
-
ts_hint: 'İpucu:
|
|
778
|
+
ts_hint: 'İpucu: typesafe_decision aracı yalnız anahtar girilince çalışır (Ayarlar → TypeSafe). Diğer ajanlar ve sohbet chat modelini kullanmaya devam eder.',
|
|
776
779
|
},
|
|
777
780
|
en: {
|
|
778
781
|
newChat: '+ New Chat',
|
|
@@ -1042,7 +1045,7 @@
|
|
|
1042
1045
|
stt_engine_local: 'Whisper — local/offline (large-v3-turbo)',
|
|
1043
1046
|
stt_engine_groq: 'Groq Whisper — cloud (fast)',
|
|
1044
1047
|
stt_engine_openai: 'OpenAI-compatible Whisper — cloud',
|
|
1045
|
-
tts_note: 'Edge TTS: free cloud engine — no key needed (Ahmet/Emel etc.). Piper: fully local/offline neural engine (downloads ~80MB on first use). OpenAI engine: compatible speech API (tts-1, tts-1-hd; voices alloy, echo, fable, onyx, nova, shimmer).',
|
|
1048
|
+
tts_note: 'Edge TTS: free cloud engine — no key needed (Ahmet/Emel etc.). Piper: fully local/offline neural engine (downloads ~80MB on first use). Supertonic: fully local/offline neural engine — 31 languages, 10 preset voices (downloads ~400MB on first use). OpenAI engine: compatible speech API (tts-1, tts-1-hd; voices alloy, echo, fable, onyx, nova, shimmer).',
|
|
1046
1049
|
tts_engine: 'Engine',
|
|
1047
1050
|
tts_edge_voice: 'Edge voice',
|
|
1048
1051
|
tts_piper_voice: 'Piper voice',
|
|
@@ -1050,6 +1053,9 @@
|
|
|
1050
1053
|
tts_piper_speed: 'Speaking speed',
|
|
1051
1054
|
tts_piper_silence: 'Sentence pause',
|
|
1052
1055
|
tts_piper_noise: 'Expressiveness',
|
|
1056
|
+
tts_supertonic_download: 'Download / prepare Supertonic',
|
|
1057
|
+
tts_supertonic_speed: 'Speaking speed',
|
|
1058
|
+
tts_supertonic_quality: 'Quality (diffusion steps)',
|
|
1053
1059
|
tts_chat_auto: 'Auto-speak agent replies in chat',
|
|
1054
1060
|
tts_on: 'TTS on — replies also go as voice',
|
|
1055
1061
|
tts_off: 'TTS off',
|
|
@@ -1492,7 +1498,7 @@
|
|
|
1492
1498
|
store_name_label: 'Skill name',
|
|
1493
1499
|
store_desc_label: 'Description',
|
|
1494
1500
|
store_tags_label: 'Tags (comma separated, max 4)',
|
|
1495
|
-
store_tags_ph: 'e.g.
|
|
1501
|
+
store_tags_ph: 'e.g. research, ocr, education',
|
|
1496
1502
|
store_files_label: 'Files',
|
|
1497
1503
|
store_commit: 'Publish to Store',
|
|
1498
1504
|
store_commit_ok: 'Skill published — see it in Trending!',
|
|
@@ -1512,7 +1518,7 @@
|
|
|
1512
1518
|
store_login_note: 'Your Beast ID is anonymous; your real Beast Code is never shared.',
|
|
1513
1519
|
/* TypeSafe (System One / Jev) */
|
|
1514
1520
|
ts_h2: 'TypeSafe (System One · Jev)',
|
|
1515
|
-
ts_sub: 'Typed decision engine: probabilistic answers without text generation (noul/choice/score).
|
|
1521
|
+
ts_sub: 'Typed decision engine: probabilistic answers without text generation (noul/choice/score). When a key is set, agents can take typed decisions via the typesafe_decision tool. Other agents and the chat are unaffected.',
|
|
1516
1522
|
ts_key_label: 'TypeSafe API key (typesafe.ai)',
|
|
1517
1523
|
ts_model_label: 'Model (default: jev-latest)',
|
|
1518
1524
|
ts_enabled_label: 'TypeSafe ON (enables browser_agent/T3SFast + typesafe_decision)',
|
|
@@ -1529,7 +1535,7 @@
|
|
|
1529
1535
|
ts_saved_toast: 'TypeSafe key saved',
|
|
1530
1536
|
ts_cleared_toast: 'TypeSafe key deleted',
|
|
1531
1537
|
ts_fail_toast: 'Could not save TypeSafe key',
|
|
1532
|
-
ts_hint: 'Tip:
|
|
1538
|
+
ts_hint: 'Tip: the typesafe_decision tool only works when a key is set (Settings → TypeSafe). Other agents and the chat keep using the chat model.',
|
|
1533
1539
|
},
|
|
1534
1540
|
};
|
|
1535
1541
|
|
package/src/renderer/index.html
CHANGED
|
@@ -102,7 +102,6 @@
|
|
|
102
102
|
</div>
|
|
103
103
|
<button id="studioBtn" class="dd-btn dd-icon-btn" title="Beast Studio — video yapma/düzenleme" data-i18n-title="tipStudio"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="6" width="13" height="12" rx="2"/><path d="M15 10l7-4v12l-7-4"/></svg></button>
|
|
104
104
|
<button id="mcpBtn" class="dd-btn dd-icon-btn" title="Beast MCP — dış araç sunucuları (Model Context Protocol)" data-i18n-title="tipMcp"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="7" rx="2"/><rect x="3" y="13" width="18" height="7" rx="2"/><line x1="7" y1="7.5" x2="7.01" y2="7.5"/><line x1="7" y1="16.5" x2="7.01" y2="16.5"/></svg></button>
|
|
105
|
-
<button id="finBtn" class="dd-btn dd-icon-btn" title="Beast Finance — MT5 trade paneli (bilgisayardaki MetaTrader 5 ile çalışır)"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 3v18h18"/><path d="M7 15l4-5 3 3 5-7"/></svg></button>
|
|
106
105
|
<button id="sbBtn" class="dd-btn dd-icon-btn" title="Beast Sandbox — GitHub reposu indir & içinde çalış" data-i18n-title="tipSandbox"><svg viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/><polyline points="3.27 6.96 12 12.01 20.73 6.96"/><line x1="12" y1="22.08" x2="12" y2="12"/></svg></button>
|
|
107
106
|
<button id="railBtn" class="dd-btn dd-icon-btn" title="Paralel Ajan Konsolu" data-i18n-title="tipRail">▤</button>
|
|
108
107
|
<button id="dmBtn" class="dd-btn dd-icon-btn" title="Ajan DM — ajanlar arası konuşma" data-i18n-title="tipAgentDm">✉︎</button>
|
|
@@ -144,182 +143,6 @@
|
|
|
144
143
|
</div>
|
|
145
144
|
</div>
|
|
146
145
|
|
|
147
|
-
<section id="finPanel">
|
|
148
|
-
<div id="finHead">
|
|
149
|
-
<span id="finTitle">BEAST FINANCE</span>
|
|
150
|
-
<span id="finDot" class="fin-dot off" title="MT5 köprüsü"></span>
|
|
151
|
-
<span id="finTerm" title="">MT5</span>
|
|
152
|
-
<span class="file-spacer"></span>
|
|
153
|
-
<button id="finReconnect" title="MT5'e yeniden bağlan">⟳</button>
|
|
154
|
-
<button id="finSettings" title="Görünüm ayarları — bölümleri göster/gizle">⚙</button>
|
|
155
|
-
</div>
|
|
156
|
-
<div id="finBody">
|
|
157
|
-
<div class="fin-card" data-fin-card="account">
|
|
158
|
-
<div class="fin-card-title">HESAP</div>
|
|
159
|
-
<div class="fin-grid">
|
|
160
|
-
<div class="fin-kv"><span>Bakiye</span><b id="finBalance">—</b></div>
|
|
161
|
-
<div class="fin-kv"><span>Varlık</span><b id="finEquityValue">—</b></div>
|
|
162
|
-
<div class="fin-kv"><span>Kâr/Zarar</span><b id="finProfit">—</b></div>
|
|
163
|
-
<div class="fin-kv"><span>Serbest Marj</span><b id="finFree">—</b></div>
|
|
164
|
-
</div>
|
|
165
|
-
</div>
|
|
166
|
-
<div class="fin-card fin-card-trader" data-fin-card="trader">
|
|
167
|
-
<div class="fin-card-title">TRADE AJANI <span id="finTraderDot" class="fin-dot off" title="Trader durumu"></span><span class="file-spacer"></span><button id="finSetupBtn" title="MT5 kurulumunu uygula — BeastFinance.mq5 derle + AutoTrading izni + grafiğe ekle">🛠</button><button id="finModelRefreshBtn" title="Modelleri yeniden çek — eksik/güncel modelleri tazeler">⟳</button><button id="finLearnBtn" title="MT5 öğrenme hafızası — neler öğrendi: sembol bazlı dersler + otomatik istatistik (görüntüle/sil)"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="vertical-align:-2px"><path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/><path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/><path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/><path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/><path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/><path d="M3.477 10.896a4 4 0 0 1 .585-.396"/><path d="M19.938 10.5a4 4 0 0 1 .585.396"/><path d="M6 18a4 4 0 0 1-1.967-.516"/><path d="M19.967 17.484A4 4 0 0 1 18 18"/></svg></button><button id="finSkillsBtn" title="Rol → skill eşleştirmesi — rol başına tek skill (çöp ikonuyla kaldırılır; boş = ajan kendi seçer)">⚙</button><button id="finAdvToggle" type="button" aria-expanded="false" title="Gelişmiş — disiplin kuralları + shadow mod"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="vertical-align:-2px"><path d="M4 6h9"/><circle cx="16.5" cy="6" r="2.5"/><path d="M20 6h0.01"/><path d="M4 12h3"/><circle cx="10.5" cy="12" r="2.5"/><path d="M15 12h5"/><path d="M4 18h11"/><circle cx="18.5" cy="18" r="2.5"/></svg></button></div>
|
|
168
|
-
<div class="fin-field">
|
|
169
|
-
<span>Model</span>
|
|
170
|
-
<select id="finTraderModel" title="Trader ajanının modeli — farklı API/model seçilebilir"></select>
|
|
171
|
-
</div>
|
|
172
|
-
<div class="fin-grid3" title="Değişiklik anında kaydedilir — ajanı DURDURMADAN sonraki tura uygulanır">
|
|
173
|
-
<div class="fin-field">
|
|
174
|
-
<span>Tur (sn)</span>
|
|
175
|
-
<input id="finInterval" type="number" min="30" max="3600" step="10" />
|
|
176
|
-
</div>
|
|
177
|
-
<div class="fin-field">
|
|
178
|
-
<span>Min lot</span>
|
|
179
|
-
<input id="finMinLot" type="number" min="0.01" max="100" step="0.01" title="Alt sınır: lot hesapları bu tabanın altına inemez — taban altındaki lotlar adıma yukarı yuvarlanır (broker minimumunun üzerinde bir taban koyar)" />
|
|
180
|
-
</div>
|
|
181
|
-
<div class="fin-field">
|
|
182
|
-
<span>Max lot</span>
|
|
183
|
-
<input id="finMaxLot" type="number" min="0.01" max="100" step="0.01" title="Üst sınır: lot hesapları bu tavanın üzerine çıkamaz (min lotun altına inemez)" />
|
|
184
|
-
</div>
|
|
185
|
-
</div>
|
|
186
|
-
<div id="finSymLimits" class="fin-hint" hidden title="Trader'ın mt5_limits ile sembole özel koyduğu lot aralıkları — sembol limiti genel aralığı aşamaz; trader sembolü sıfırlarsa genel aralık geçerli olur"></div>
|
|
187
|
-
<div class="fin-field">
|
|
188
|
-
<span>Semboller</span>
|
|
189
|
-
<button id="finSymBtn" class="fin-sym-select" title="MT5 sembol listesinden seç — tıkla">…</button>
|
|
190
|
-
</div>
|
|
191
|
-
<div class="fin-field">
|
|
192
|
-
<span>Analiz ekibi <i class="fin-hint">— çoklu seç: hangi uzman ajanlar koşacak (işlem açmaz)</i></span>
|
|
193
|
-
<div id="finRoles" class="fin-roles" title="Trader'ın yanında koşacak uzman ajanları seç — Risk / Teknik / Haber / Görsel; seçilen her rol AYRI sürekli ajan olarak koşar (işlem açmaz)"></div>
|
|
194
|
-
</div>
|
|
195
|
-
<div class="fin-field">
|
|
196
|
-
<span>Ajan talimatı <i class="fin-hint">— 1-2 cümle; trader + tüm paralel ajanlara iletilir</i><button id="finStrategyHelp" class="fin-help-btn" type="button" title="Neler yazabilirim? Desteklenen talimatlar ve örnekler">?</button></span>
|
|
197
|
-
<textarea id="finStrategy" rows="2" maxlength="2000" placeholder="örn. 1- risk yüzde 2 2- martingale kullan 3- her mumda işlem açmak zorundasın" title="Buraya yazdığın talimat trade ajanına ve koşan tüm paralel ajanlara (ekip + sembol işçileri) sistem promptunda öncelikli strateji notu olarak gider; kaydetmek için alandan çık"></textarea>
|
|
198
|
-
</div>
|
|
199
|
-
<div id="finAdvWrap" hidden>
|
|
200
|
-
<div class="fin-field">
|
|
201
|
-
<span>Disiplin <i class="fin-hint">— kodla zorlanır; 0 = kural kapalı</i></span>
|
|
202
|
-
<div class="fin-grid2">
|
|
203
|
-
<div class="fin-field"><span>Günlük max işlem (kapalı)</span><input id="finMaxTradesDay" type="number" min="0" max="50" step="1" disabled title="Kaldırıldı: günlük işlem limiti yalnız talimata "günde en fazla N işlem" yazarsan uygulanır — varsayılan sınırsız" /></div>
|
|
204
|
-
<div class="fin-field"><span>Kayıp serisi limiti</span><input id="finLossStreak" type="number" min="0" max="10" step="1" title="Üst üste bu kadar kayıptan sonra yeni işlem kilidi (0 = kapalı)" /></div>
|
|
205
|
-
<div class="fin-field"><span>Seri molası (dk)</span><input id="finLossStreakPause" type="number" min="0" max="1440" step="5" title="Kayıp serisi limitine ulaşınca kaç dakika yeni işlem açılmaz" /></div>
|
|
206
|
-
<div class="fin-field"><span>Re-entry bekleme (dk)</span><input id="finReentry" type="number" min="0" max="1440" step="5" title="Aynı sembolda bir işlem kapandıktan sonra yeni giriş için beklenecek süre — VARSAYILAN KAPALI (0 = kapalı)" /></div>
|
|
207
|
-
<div class="fin-field"><span>Kur başına max</span><input id="finMaxPerCurrency" type="number" min="0" max="20" step="1" title="Yönlü kur maruziyeti (korelasyon) limiti — örn. 3: aynı para biriminde en fazla ±3 net pozisyon (0 = kapalı)" /></div>
|
|
208
|
-
<div class="fin-field"><span>Plan / Review (saat)</span><div class="fin-time-row"><input id="finPlanTime" type="time" title="Hafta içi günlük plan saati (boş = kapalı)" /><input id="finReviewTime" type="time" title="Hafta içi günlük review saati (boş = kapalı)" /></div></div>
|
|
209
|
-
</div>
|
|
210
|
-
</div>
|
|
211
|
-
<div class="fin-field fin-check">
|
|
212
|
-
<label title="SHADOW MOD: emir gönderilmez — kararlar teziyle günlüğe yazılır, gerçek işlem açılmaz. Ajanı para riske atmadan canlı test etmek için.">
|
|
213
|
-
<input id="finShadow" type="checkbox" /> Shadow mod — emir açmadan karar kaydı (canlı test)
|
|
214
|
-
</label>
|
|
215
|
-
</div>
|
|
216
|
-
</div>
|
|
217
|
-
<div class="fin-row fin-btn-row">
|
|
218
|
-
<button id="finTraderBtn" class="fin-start">▶︎ Ajanı Başlat</button>
|
|
219
|
-
</div>
|
|
220
|
-
<div id="finTraderStatus">Kapalı</div>
|
|
221
|
-
</div>
|
|
222
|
-
<div class="fin-card" id="finPosCard" data-fin-card="posmgr">
|
|
223
|
-
<div class="fin-card-title">POZİSYON YÖNETİCİSİ <span id="finPosDot" class="fin-dot off" title="Pozisyon yöneticisi durumu"></span><span id="finPosInfo" class="fin-hint"></span></div>
|
|
224
|
-
<div class="fin-field fin-check">
|
|
225
|
-
<label title="Açık pozisyon varken ayarlı sıklıkta JEV turu: kapat / kısmi kapat / SL taşı kararları. Trade ajanından bağımsız ayrı bir ajan — kendi talimatıyla çalışır; LLM kullanmaz.">
|
|
226
|
-
<input id="finPosOn" type="checkbox" /> Aktif — açık pozisyonları Jev ile yönet
|
|
227
|
-
</label>
|
|
228
|
-
</div>
|
|
229
|
-
<div class="fin-field">
|
|
230
|
-
<span>Kontrol (sn)</span>
|
|
231
|
-
<input id="finPosSec" type="number" min="1" max="300" step="1" title="Kaç saniyede bir kontrol edilsin — 1-300 (varsayılan 5). Trade ajanından bağımsız kendi zamanlayıcısı vardır." />
|
|
232
|
-
</div>
|
|
233
|
-
<div class="fin-field">
|
|
234
|
-
<span>Yönetici talimatı <i class="fin-hint">— yalnız bu ajanı bağlar</i><button id="finPosHelp" class="fin-help-btn" type="button" title="Neler yazabilirim? Desteklenen talimatlar ve örnekler">?</button></span>
|
|
235
|
-
<textarea id="finPosNote" rows="2" maxlength="1500" placeholder="örn. 1- 1R'de %50 kısmi kapat 2- kâr 2R'ye gelince kalanı kapat 3- zarar -0.5R'yi geçerse kes" title="Bu talimat YALNIZ Pozisyon Yöneticisi Jev ajanına gider (5 sn turu, kapat/kısmi/SL kararları); kaydetmek için alandan çık"></textarea>
|
|
236
|
-
</div>
|
|
237
|
-
<div id="finPosStatus">Beklemede — açık pozisyon yok</div>
|
|
238
|
-
</div>
|
|
239
|
-
<div class="fin-card" id="finRiskCard" data-fin-card="risk" hidden>
|
|
240
|
-
<div class="fin-card-title">RİSK OTOMASYONU <span id="finWatchDot" class="fin-dot off" title="Koruma döngüsü"></span><span id="finWatchInfo" class="fin-hint"></span></div>
|
|
241
|
-
<div class="fin-field fin-check">
|
|
242
|
-
<label title="5 saniyelik döngü: +R'da SL'yi başabaşa çeker, trailing uygular, kısmi TP alır — ajan turunu beklemez">
|
|
243
|
-
<input id="finWatchdog" type="checkbox" /> Aktif — BE + trailing + kâr koruma + kısmi TP
|
|
244
|
-
</label>
|
|
245
|
-
</div>
|
|
246
|
-
<div class="fin-grid2">
|
|
247
|
-
<div class="fin-field"><span>BE (R)</span><input id="finBeOnR" type="number" min="0" max="10" step="0.1" title="Kâr kaç R'ye ulaşınca SL başabaşa çekilsin (0 = kapalı)" /></div>
|
|
248
|
-
<div class="fin-field"><span>Trailing başlangıç (R)</span><input id="finTrailStartR" type="number" min="0" max="10" step="0.1" title="Kaç R kârdan sonra trailing başlasın (0 = kapalı)" /></div>
|
|
249
|
-
<div class="fin-field"><span>Trailing mesafe (R)</span><input id="finTrailR" type="number" min="0" max="5" step="0.1" title="SL fiyattan kaç R geriden gelsin" /></div>
|
|
250
|
-
<div class="fin-field"><span>Kâr koruma başlangıç (R)</span><input id="finProtectStartR" type="number" min="0" max="10" step="0.1" title="Kâr bu R'ye ulaşınca SL kilitlenir: görülen EN İYİ kârın bir kısmı garantiye alınır — kâr eksiye dönmez (0 = kapalı, önerilen 0.3)" /></div>
|
|
251
|
-
<div class="fin-field"><span>Kâr koruma payı (R)</span><input id="finProtectDistR" type="number" min="0" max="5" step="0.05" title="Kilitlenen SL, görülen en iyi kârın kaç R gerisinde kalsın (ör. 0.15: +0.5R görüldüyse SL +0.35R'ye kilitlenir)" /></div>
|
|
252
|
-
<div class="fin-field"><span>Kısmi TP (R)</span><input id="finPartialR" type="number" min="0" max="10" step="0.1" title="Kaç R kârda ajana kısmi TP fırsatı bildirilsin (0 = kapalı) — kapatma kararını AJAN verir, otomatik kapatılmaz" /></div>
|
|
253
|
-
<div class="fin-field"><span>Kısmi TP (%)</span><input id="finPartialPct" type="number" min="0" max="90" step="5" title="Fırsat bildiriminde ajana önerilecek kısmi kapatma yüzdesi (kapatma kararı ajanın)" /></div>
|
|
254
|
-
<div class="fin-field"><span>Günlük kayıp uyarı (%)</span><input id="finMaxDailyLoss" type="number" min="0" max="50" step="0.5" title="Gün içi düşüş bu yüzdeyi geçince aksiyon uygulanır (0 = kapalı)" /></div>
|
|
255
|
-
</div>
|
|
256
|
-
<div class="fin-grid2">
|
|
257
|
-
<div class="fin-field"><span>İşlem riski (%)</span><input id="finRiskPct" type="number" min="0" max="20" step="0.1" title="Pozisyon başına hesap riski — mt5_risksize ve riskPct ile lot bu orandan hesaplanır" /></div>
|
|
258
|
-
<div class="fin-field"><span>Sembol başına max</span><input id="finMaxPerSymbol" type="number" min="0" max="20" step="1" title="Aynı sembolde aynı yönde en fazla kaç pozisyon (0 = sınırsız)" /></div>
|
|
259
|
-
<div class="fin-field"><span>Aynı yön max</span><input id="finMaxSameSide" type="number" min="0" max="20" step="1" title="Toplam aynı yönde (buy ya da sell) en fazla pozisyon (0 = sınırsız)" /></div>
|
|
260
|
-
<div class="fin-field"><span>Min marj seviyesi (%)</span><input id="finMinMarginLevel" type="number" min="0" max="1000" step="10" title="İşlem sonrası marj seviyesi bunun altına düşecekse işlem reddedilir (0 = kapalı)" /></div>
|
|
261
|
-
</div>
|
|
262
|
-
<div class="fin-field">
|
|
263
|
-
<span>Günlük limit aksiyonu</span>
|
|
264
|
-
<select id="finDailyLossAction" title="Günlük kayıp limiti aşılınca ne yapılsın">
|
|
265
|
-
<option value="warn">Yalnız uyar</option>
|
|
266
|
-
<option value="stop">Ajanları durdur</option>
|
|
267
|
-
<option value="flatten">Durdur + hepsini kapat</option>
|
|
268
|
-
</select>
|
|
269
|
-
</div>
|
|
270
|
-
<div id="finAlertList" class="fin-alerts"><div class="fin-empty">Aktif fiyat alarmı yok</div></div>
|
|
271
|
-
</div>
|
|
272
|
-
<div class="fin-card" id="finNotifyCard" data-fin-card="notify" hidden>
|
|
273
|
-
<div class="fin-card-title">BİLDİRİM <span class="fin-hint">— kanal seçimi ve olay filtresi</span></div>
|
|
274
|
-
<div class="fin-field">
|
|
275
|
-
<span>Bildirim kanalı</span>
|
|
276
|
-
<select id="finNotifyTarget" title="Emir/işlem bildirimleri bu kanala gider; panel ve masaüstü toast her zaman çalışır">
|
|
277
|
-
<option value="auto">Otomatik (bağlı olan kanallar)</option>
|
|
278
|
-
<option value="telegram">Telegram</option>
|
|
279
|
-
<option value="whatsapp">WhatsApp</option>
|
|
280
|
-
<option value="discord">Discord</option>
|
|
281
|
-
<option value="off">Kapalı (yalnız panel)</option>
|
|
282
|
-
</select>
|
|
283
|
-
</div>
|
|
284
|
-
<div class="fin-field fin-check">
|
|
285
|
-
<label title="İşaretliyken kanala YALNIZ emir olayları düşer: açılış, kapanış, SL/TP güncelleme, bekleyen emir, iptal. Fiyat alarmı, BE/trailing/kısmi TP, günlük limit ve rapor bildirimleri gelmez — onlar panelde kalır">
|
|
286
|
-
<input id="finNotifyTradeOnly" type="checkbox" checked /> Kanala sadece emir/işlem olayları gelsin (alarm gelmez)
|
|
287
|
-
</label>
|
|
288
|
-
</div>
|
|
289
|
-
</div>
|
|
290
|
-
<div class="fin-card" id="finPerfCard" data-fin-card="perf" hidden>
|
|
291
|
-
<div class="fin-card-title">PERFORMANS <span id="finStatsInfo" class="fin-hint"></span><span class="file-spacer"></span><button id="finReportBtn" title="Haftalık rapor üret — istatistik + işlem günlüğü + ajan değerlendirmesi">📄 Rapor</button></div>
|
|
292
|
-
<div id="finEquityChart" class="fin-equity"></div>
|
|
293
|
-
<div class="fin-grid">
|
|
294
|
-
<div class="fin-kv"><span>Bugün</span><b id="finStatToday">—</b></div>
|
|
295
|
-
<div class="fin-kv"><span>Hafta</span><b id="finStatWeek">—</b></div>
|
|
296
|
-
<div class="fin-kv"><span>Win rate</span><b id="finStatWin">—</b></div>
|
|
297
|
-
<div class="fin-kv"><span>Profit factor</span><b id="finStatPf">—</b></div>
|
|
298
|
-
<div class="fin-kv"><span>Max DD</span><b id="finStatDd">—</b></div>
|
|
299
|
-
<div class="fin-kv"><span>İşlem (90g)</span><b id="finStatTrades">—</b></div>
|
|
300
|
-
</div>
|
|
301
|
-
</div>
|
|
302
|
-
<div class="fin-card" data-fin-card="positions">
|
|
303
|
-
<div class="fin-card-title">POZİSYONLAR <span id="finPosCount"></span></div>
|
|
304
|
-
<div id="finPosList"><div class="fin-empty">Açık pozisyon yok</div></div>
|
|
305
|
-
<div class="fin-sect-title">BEKLEYEN EMİRLER <span id="finOrdCount"></span></div>
|
|
306
|
-
<div id="finOrdList"><div class="fin-empty">Bekleyen emir yok</div></div>
|
|
307
|
-
</div>
|
|
308
|
-
<div class="fin-card" data-fin-card="market">
|
|
309
|
-
<div class="fin-card-title">
|
|
310
|
-
PİYASA
|
|
311
|
-
<span class="file-spacer"></span>
|
|
312
|
-
<button id="finWatchClear" title="İzleme listesini TAMAMEN sil — semboller geçmişe düşer, sonra tek tıkla geri eklenir">✕︎</button>
|
|
313
|
-
<button id="finSymAdd" title="Sembol ekle/çıkar — MT5 sembol listesinden seç">+</button>
|
|
314
|
-
</div>
|
|
315
|
-
<div id="finSymList"><div class="fin-empty">—</div></div>
|
|
316
|
-
</div>
|
|
317
|
-
<div class="fin-card fin-grow" id="finFlowCard" data-fin-card="flow" hidden>
|
|
318
|
-
<div class="fin-card-title">AKIŞ</div>
|
|
319
|
-
<div id="finLog"></div>
|
|
320
|
-
</div>
|
|
321
|
-
</div>
|
|
322
|
-
</section>
|
|
323
146
|
|
|
324
147
|
<div id="ideRow">
|
|
325
148
|
<section id="codePane">
|
|
@@ -850,126 +673,6 @@
|
|
|
850
673
|
</div>
|
|
851
674
|
</div>
|
|
852
675
|
|
|
853
|
-
<div id="finSymOverlay" class="mini-overlay" hidden>
|
|
854
|
-
<div class="mini-dialog fin-sym-dialog">
|
|
855
|
-
<div class="mini-head">
|
|
856
|
-
<span class="mini-title">MT5 SEMBOLLERİ</span>
|
|
857
|
-
<span id="finSymCount" class="fin-sym-count"></span>
|
|
858
|
-
<button class="mini-close" id="finSymClose" title="Kapat">×</button>
|
|
859
|
-
</div>
|
|
860
|
-
<div class="mini-body">
|
|
861
|
-
<input id="finSymSearch" placeholder="Sembol ara… (örn: XAU, BTC, EUR, US500)" spellcheck="false" autocomplete="off" />
|
|
862
|
-
<div id="finSymPick" class="mini-list"></div>
|
|
863
|
-
<div class="fin-sym-hint">Tıkla: izleme listesine ekle/çıkar — PİYASA kartına anında düşer</div>
|
|
864
|
-
</div>
|
|
865
|
-
</div>
|
|
866
|
-
</div>
|
|
867
|
-
|
|
868
|
-
<div id="finSkillsOverlay" class="mini-overlay" hidden>
|
|
869
|
-
<div class="mini-dialog fin-skills-dialog">
|
|
870
|
-
<div class="mini-head">
|
|
871
|
-
<span class="mini-title">ROL → SKILL EŞLEŞTİRME</span>
|
|
872
|
-
<button class="mini-close" id="finSkillsClose" title="Kapat">×</button>
|
|
873
|
-
</div>
|
|
874
|
-
<div class="mini-body">
|
|
875
|
-
<div id="finSkillsList" class="mini-list"></div>
|
|
876
|
-
<div class="fin-sym-hint"><b>BEAST FINANCE AJANLARI ARTIK HER ZAMAN JEV (TypeSafe System One) İLE ÇALIŞIR — LLM KULLANILMAZ.</b> Trader + analiz ekibi + sembol işçileri tur verisini koda toplar, kararı Jev'den (tipli olasılıklar) alır, emri kod uygular; cevaplar AJAN DM'de tüm ekibe görünür. Ayarlar → TypeSafe'ten API anahtarı zorunludur; anahtar yoksa ajanlar tur atmaz.<br>Buradaki skill seçimi (en fazla 2) yalnız finance SOHBET yardımcısının (LLM) playbook'u içindir; ajanların karar hattını değiştirmez. Seçili skill'i çöp ikonuyla kaldırabilirsin.</div>
|
|
877
|
-
</div>
|
|
878
|
-
</div>
|
|
879
|
-
</div>
|
|
880
|
-
|
|
881
|
-
<div id="finLearnOverlay" class="mini-overlay" hidden>
|
|
882
|
-
<div class="mini-dialog fin-learn-dialog">
|
|
883
|
-
<div class="mini-head">
|
|
884
|
-
<span class="mini-title">MT5 ÖĞRENME HAFIZASI</span>
|
|
885
|
-
<span id="finLearnCount" class="fin-sym-count"></span>
|
|
886
|
-
<button id="finLearnClear" title="TÜM sembollerin derslerini sil — otomatik istatistikler korunur (depo şişmesi/zehirlenmesi önlenir)">Tüm dersleri sil</button>
|
|
887
|
-
<button class="mini-close" id="finLearnClose" title="Kapat">×</button>
|
|
888
|
-
</div>
|
|
889
|
-
<div class="mini-body">
|
|
890
|
-
<div id="finLearnList" class="mini-list"></div>
|
|
891
|
-
<div class="fin-sym-hint">Trade ajanının çekirdekteki sembol bazlı hafızası: her işlem kapanışı otomatik istatistiğe işlenir; ajan yalnız gerçekten öğretici, kısa bir içgörü olunca ders yazar (her kapanışa ders YAZMAZ — günlük en fazla 3, tek kısa cümle). Sembol satırına tıkla → kalıcı özeti, dersleri ve son işlemleri gör; ÖZET ile eski dersleri modele sıkıştırt (24+ ders birikince otomatik), tek dersi çöp ikonuyla sil, sembol kaydını tümden bırak. Hafıza sürekli sadeleşir: 30 günden eski dersler, 90 günden eski işlem kayıtları ve 120 gün hareketsiz semboller otomatik unutulur.</div>
|
|
892
|
-
</div>
|
|
893
|
-
</div>
|
|
894
|
-
</div>
|
|
895
|
-
|
|
896
|
-
<div id="finHelpOverlay" class="mini-overlay" hidden>
|
|
897
|
-
<div class="mini-dialog fin-help-dialog">
|
|
898
|
-
<div class="mini-head">
|
|
899
|
-
<span class="mini-title" id="finHelpTitle">TALİMAT KILAVUZU</span>
|
|
900
|
-
<button class="mini-close" id="finHelpClose" title="Kapat">×</button>
|
|
901
|
-
</div>
|
|
902
|
-
<div class="mini-body" id="finHelpBody"></div>
|
|
903
|
-
</div>
|
|
904
|
-
</div>
|
|
905
|
-
|
|
906
|
-
<div id="finTeamOverlay" class="mini-overlay" hidden>
|
|
907
|
-
<div class="mini-dialog fin-sym-dialog">
|
|
908
|
-
<div class="mini-head">
|
|
909
|
-
<span class="mini-title">ANALİZ EKİBİ — AJAN SEÇ</span>
|
|
910
|
-
<span id="finTeamCount" class="fin-sym-count"></span>
|
|
911
|
-
<button class="mini-close" id="finTeamClose" title="Kapat">×</button>
|
|
912
|
-
</div>
|
|
913
|
-
<div class="mini-body">
|
|
914
|
-
<div id="finTeamPick" class="mini-list"></div>
|
|
915
|
-
<div class="fin-sym-hint">Tıkla: ajanı ekibe ekle/çıkar — seçilen her rol AYRI sürekli ajan olarak koşar (işlem açmaz). Değişiklik anında kaydedilir; ajanı başlatınca seçili roller başlar.</div>
|
|
916
|
-
</div>
|
|
917
|
-
</div>
|
|
918
|
-
</div>
|
|
919
|
-
|
|
920
|
-
<div id="finSettingsOverlay" class="mini-overlay" hidden>
|
|
921
|
-
<div class="mini-dialog fin-settings-dialog">
|
|
922
|
-
<div class="mini-head">
|
|
923
|
-
<span class="mini-title">FINANCE GÖRÜNÜM AYARLARI</span>
|
|
924
|
-
<button class="mini-close" id="finSettingsClose" title="Kapat">×</button>
|
|
925
|
-
</div>
|
|
926
|
-
<div class="mini-body">
|
|
927
|
-
<div class="fin-set-hint">Varsayılan olarak dört bölüm de gizlidir — açmak tamamen isteğe bağlıdır. Seçim bilgisayarda hatırlanır. Risk otomasyonu gizliyken AKTİF OLMAZ.</div>
|
|
928
|
-
<label class="fin-set-row" title="BE + trailing + kısmi TP koruması, günlük limitler, fiyat alarmları bölümü">
|
|
929
|
-
<input id="finShowRisk" type="checkbox" />
|
|
930
|
-
<span class="fsr-main"><b>RİSK OTOMASYONU</b><i>BE + trailing + kısmi TP, günlük limitler, alarmlar</i></span>
|
|
931
|
-
</label>
|
|
932
|
-
<label class="fin-set-row" title="Bildirim kanalı (WhatsApp/Telegram/Discord) ve hangi olayların gönderileceği bölümü">
|
|
933
|
-
<input id="finShowNotify" type="checkbox" />
|
|
934
|
-
<span class="fsr-main"><b>BİLDİRİM</b><i>Kanal seçimi, emir/alarm olay filtresi</i></span>
|
|
935
|
-
</label>
|
|
936
|
-
<label class="fin-set-row" title="Equity grafiği + günlük/haftalık istatistikler + haftalık rapor bölümü">
|
|
937
|
-
<input id="finShowPerf" type="checkbox" />
|
|
938
|
-
<span class="fsr-main"><b>PERFORMANS</b><i>Equity grafiği, istatistikler, haftalık rapor</i></span>
|
|
939
|
-
</label>
|
|
940
|
-
<label class="fin-set-row" title="Ajan/MT5 işlem günlüğü akışı bölümü">
|
|
941
|
-
<input id="finShowFlow" type="checkbox" />
|
|
942
|
-
<span class="fsr-main"><b>AKIŞ</b><i>Ajan ve MT5 olay günlüğü</i></span>
|
|
943
|
-
</label>
|
|
944
|
-
<div class="fin-set-note">RİSK OTOMASYONU gizliyken koruma döngüsü (watchdog) kapatılır; tekrar gösterdiğinde ilgili kutucuktan açabilirsin.</div>
|
|
945
|
-
<div class="fin-set-sep"></div>
|
|
946
|
-
<label class="fin-set-row" title="Varsayılan KAPALI: kapalıyken ajanlar 7/24 çalışır. Açıkken Beast Finance ve tüm ajanları YALNIZ belirlenen saat aralığında çalışır — aralık dışında yeni tur başlatılmaz ve olaylar ajanı uyandırmaz (makinenin YEREL saati). Açık pozisyon koruması (BE/trailing/kısmi TP) her saat çalışmaya devam eder.">
|
|
947
|
-
<input id="finTradeHoursOn" type="checkbox" />
|
|
948
|
-
<span class="fsr-main"><b>TRADE SAATLERİ</b><i>Kapalıyken 7/24 · açıkken ajanlar yalnız bu aralıkta</i></span>
|
|
949
|
-
</label>
|
|
950
|
-
<div id="finTradeHoursWrap" class="fin-set-sub" hidden>
|
|
951
|
-
<span class="fin-set-lbl">BAŞLANGIÇ / BİTİŞ (YEREL SAAT)</span>
|
|
952
|
-
<div class="fin-th-row">
|
|
953
|
-
<input id="finTradeHoursStart" type="time" step="60" value="09:00" />
|
|
954
|
-
<span class="fin-set-lbl">→</span>
|
|
955
|
-
<input id="finTradeHoursEnd" type="time" step="60" value="22:00" />
|
|
956
|
-
</div>
|
|
957
|
-
<div class="fin-set-note" style="margin:0">Aralık dışında ajan turları askıya alınır, olay alarmları ajanı uyandırmaz; pencere açılıp kapanınca kaldığı yerden devam eder. Gece aralığı da verilebilir (ör. 22:00 → 06:00).</div>
|
|
958
|
-
</div>
|
|
959
|
-
<div class="fin-set-sep"></div>
|
|
960
|
-
<label class="fin-set-row" title="Açıkken botu eklediğin Telegram grubuna yazılan ilk mesaj o grubu AJAN DM aynası yapar. Her AJAN DM grubu Telegram'da AYRI BAŞLIK (topic) olarak canlı akar; başlığa yazdıkların ilgili AJAN DM grubunda görünür ve o grubun ajanları uyanır. Grup/Konu seçmene gerek yok.">
|
|
961
|
-
<input id="finDmTgOn" type="checkbox" />
|
|
962
|
-
<span class="fsr-main"><b>AJAN DM ↔ TELEGRAM</b><i>Her ajan grubu Telegram'da ayrı başlık — canlı</i></span>
|
|
963
|
-
</label>
|
|
964
|
-
<div id="finDmTgWrap" class="fin-set-sub" hidden>
|
|
965
|
-
<span class="fin-set-lbl">TELEGRAM GRUBU</span>
|
|
966
|
-
<div id="finDmTgState" class="fin-dm-tg-state">—</div>
|
|
967
|
-
<button id="finDmTgUnbind" class="fin-set-btn" title="Bağlantıyı kopar — sonra gruba yazılan ilk mesaj yeni grup olarak otomatik bağlanır">✕︎ Bağlantıyı kopar</button>
|
|
968
|
-
<div id="finDmTgHint" class="fin-set-note" style="margin:2px 0 0"></div>
|
|
969
|
-
</div>
|
|
970
|
-
</div>
|
|
971
|
-
</div>
|
|
972
|
-
</div>
|
|
973
676
|
|
|
974
677
|
<div id="cronOverlay" class="mini-overlay" hidden>
|
|
975
678
|
<div class="mini-dialog">
|