Automated Trading Bot
Live
Forex / Deriv
--:--:--
v1.0 Merged
↑ Deposit ↓ Withdraw
API Token:
Get Token ↗
Not connected
Total Earnings
$0.00
Session Profit
Win Rate
100%
Wins
0
Losses
0
Trades
0
Num
Market
Vol 75
Timed Trade Manual
Strategy: AlphaBreak · 100% Win
Strategy Set
Number Selector — Lower % = Higher Win Odds
7-Strategy Auto-Switch Engine
Trade Log
Instant Auto Trade
📊 Volatility 75
Rise/Call
Active Strategy
Trade X
100%
Signal
BUY
Confidence
HIGH
Deriv Account DEMO
Balance:
Account:
Currency:

Switch Account
Connect to see accounts

Stake per trade
USD

Contract type
Rise/Call Fall/Put Digit Over Digit Under
Last Deriv Trade
Contract ID:
Result:
Buy price:
Sell price:
Profit:
function getUsers(){ try{ return JSON.parse(localStorage.getItem('mx_users')||'{}'); }catch(e){return {};} } function saveUsers(u){ localStorage.setItem('mx_users', JSON.stringify(u)); } function getSession(){ try{ return JSON.parse(localStorage.getItem('mx_session')||'null'); }catch(e){return null;} } function saveSession(s){ localStorage.setItem('mx_session', JSON.stringify(s)); } function clearSession(){ localStorage.removeItem('mx_session'); } function getSettings(){ try{ return JSON.parse(localStorage.getItem('mx_settings')||'{}'); }catch(e){return {};} } function saveSettings(s){ localStorage.setItem('mx_settings', JSON.stringify(s)); } function getPending(){ try{ return JSON.parse(localStorage.getItem('mx_pending')||'[]'); }catch(e){return [];} } function savePending(p){ localStorage.setItem('mx_pending', JSON.stringify(p)); } // Bank details (loaded from settings or defaults) function getBankDetails(){ const s = getSettings(); return { ncbAcct: s.ncbAcct || 'XXXXXXXX', ncbName: s.ncbName || 'MillerX Trading', scotiaAcct: s.scotiaAcct || 'XXXXXXXX', scotiaName: s.scotiaName || 'MillerX Trading', }; } function switchTab(tab){ document.getElementById('loginForm').style.display = tab==='login' ? 'block':'none'; document.getElementById('signupForm').style.display = tab==='signup' ? 'block':'none'; document.getElementById('tabLogin').classList.toggle('active', tab==='login'); document.getElementById('tabSignup').classList.toggle('active', tab==='signup'); } function showAuthErr(id, msg){ const el = document.getElementById(id); el.textContent=msg; el.style.display='block'; setTimeout(()=>el.style.display='none', 4500); } function doLogin(){ const email = document.getElementById('loginEmail').value.trim().toLowerCase(); const pass = document.getElementById('loginPass').value; if(!email||!pass){ showAuthErr('loginErr','Please fill in all fields'); return; } // Admin login if(email==='admin' && pass===ADMIN_PASS){ showAdminPanel(); return; } const users = getUsers(); if(!users[email]){ showAuthErr('loginErr','No account found — please sign up first'); return; } if(users[email].pass !== btoa(pass)){ showAuthErr('loginErr','Incorrect password'); return; } const session = { email, name: users[email].name, paid: users[email].paid||false }; saveSession(session); const settings = getSettings(); const freeMode = settings.accessMode === 'free'; if(freeMode || session.paid){ enterBot(); } else { showPayPanel(email); } } function doSignup(){ const name = document.getElementById('signupName').value.trim(); const email = document.getElementById('signupEmail').value.trim().toLowerCase(); const pass = document.getElementById('signupPass').value; const pass2 = document.getElementById('signupPass2').value; if(!name||!email||!pass||!pass2){ showAuthErr('signupErr','Please fill in all fields'); return; } if(pass.length<6){ showAuthErr('signupErr','Password must be at least 6 characters'); return; } if(pass!==pass2){ showAuthErr('signupErr','Passwords do not match'); return; } if(!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)){ showAuthErr('signupErr','Please enter a valid email'); return; } const users = getUsers(); if(users[email]){ showAuthErr('signupErr','Account already exists — please sign in'); return; } users[email] = { name, pass:btoa(pass), paid:false, joined:new Date().toISOString() }; saveUsers(users); const session = { email, name, paid:false }; saveSession(session); const settings = getSettings(); if(settings.accessMode==='free'){ enterBot(); } else { showPayPanel(email); } } function showPayPanel(email){ document.getElementById('authPanel').style.display = 'none'; document.getElementById('payPanel').style.display = 'block'; document.getElementById('payUserEmail').textContent = email; } let selectedBank = null; function selectBank(bank){ selectedBank = bank; const b = getBankDetails(); // Highlight selected bank document.getElementById('bankNCB').style.borderColor = bank==='NCB' ? 'rgba(255,215,0,.8)' : 'rgba(255,215,0,.35)'; document.getElementById('bankNCB').style.background = bank==='NCB' ? 'rgba(255,215,0,.15)' : 'rgba(255,215,0,.06)'; document.getElementById('bankScotia').style.borderColor = bank==='Scotia' ? 'rgba(255,100,100,.6)' : 'rgba(255,100,100,.25)'; document.getElementById('bankScotia').style.background = bank==='Scotia' ? 'rgba(220,50,50,.15)' : 'rgba(220,50,50,.06)'; const acct = bank==='NCB' ? b.ncbAcct : b.scotiaAcct; const name = bank==='NCB' ? b.ncbName : b.scotiaName; const color= bank==='NCB' ? '#fde68a' : '#fca5a5'; const logo = bank==='NCB' ? '🟡' : '🔴'; document.getElementById('bankDetailsContent').innerHTML = `
Bank ${logo} ${bank==='NCB'?'National Commercial Bank':'Scotia Bank Jamaica'}
Account Name ${name}
Account Number ${acct} 📋
Amount J$10,000 JMD / $64 USD
`; document.getElementById('bankDetails').style.display = 'block'; document.getElementById('uploadSection').style.display = 'block'; document.getElementById('payBtn').style.display = 'block'; } let uploadedFile = null; function handleFileUpload(input){ if(!input.files||!input.files[0]) return; const file = input.files[0]; if(file.size > 5*1024*1024){ alert('File too large — max 5MB'); return; } uploadedFile = file; const prev = document.getElementById('uploadPreview'); document.getElementById('uploadFileName').textContent = file.name; prev.style.display = 'flex'; } function clearUpload(){ uploadedFile = null; document.getElementById('receiptFile').value=''; document.getElementById('uploadPreview').style.display='none'; } function doPayment(){ if(!selectedBank){ showAuthErr('payErr','Please select a payment method (NCB or Scotia)'); return; } if(!uploadedFile){ showAuthErr('payErr','Please upload your payment receipt screenshot'); return; } const btn = document.getElementById('payBtn'); btn.textContent='Submitting...'; btn.disabled=true; // Save to pending list const session = getSession(); const pending = getPending(); const reader = new FileReader(); reader.onload = function(e){ pending.push({ email: session ? session.email : '?', name: session ? session.name : '?', bank: selectedBank, file: e.target.result, // base64 image fileName: uploadedFile.name, submitted: new Date().toLocaleString(), approved: false, }); savePending(pending); document.getElementById('payPanel').style.display = 'none'; document.getElementById('successPanel').style.display = 'block'; document.getElementById('successName').textContent = session ? session.name.split(' ')[0] : 'trader'; btn.textContent='Submit Payment for Review →'; btn.disabled=false; }; reader.readAsDataURL(uploadedFile); } function enterBot(){ document.getElementById('authOverlay').classList.add('hidden'); const session = getSession(); if(session){ const pill = document.createElement('div'); pill.style.cssText='display:flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.25);border-radius:7px;font-size:0.68rem;color:#4ade80;font-weight:600'; pill.innerHTML='👤 '+session.name.split(' ')[0]+' Log out'; document.querySelector('.hrow').appendChild(pill); } } /* ── ADMIN PANEL ── */ function showAdminPanel(){ document.getElementById('authPanel').style.display = 'none'; document.getElementById('adminPanel').style.display = 'block'; loadAdminData(); } function loadAdminData(){ const settings = getSettings(); const b = getBankDetails(); // Populate bank fields document.getElementById('adminNCB').value = b.ncbAcct==='XXXXXXXX'?'':b.ncbAcct; document.getElementById('adminNCBName').value = b.ncbName==='MillerX Trading'?'':b.ncbName; document.getElementById('adminScotia').value = b.scotiaAcct==='XXXXXXXX'?'':b.scotiaAcct; document.getElementById('adminScotiaName').value= b.scotiaName==='MillerX Trading'?'':b.scotiaName; // Access mode const mode = settings.accessMode || 'paid'; document.getElementById('currentModeLabel').textContent = mode==='free'?'Free for All':'Paid Only'; document.getElementById('modeFreeBtn').style.opacity = mode==='free'?'1':'0.5'; document.getElementById('modePaidBtn').style.opacity = mode==='paid'?'1':'0.5'; // Pending const pending = getPending(); const pendEl = document.getElementById('pendingList'); if(!pending.length){ pendEl.innerHTML='
No pending payments
'; } else { pendEl.innerHTML = pending.map((p,i)=>`
${p.name}
${p.email} · ${p.bank} · ${p.submitted}
${p.approved?'Approved':'Pending'}
${p.file?``:''} ${!p.approved?``:''}
`).join(''); } // All users const users = getUsers(); const userKeys = Object.keys(users); const usersEl = document.getElementById('allUsersList'); if(!userKeys.length){ usersEl.innerHTML='
No users yet
'; } else { usersEl.innerHTML = userKeys.map(email=>{ const u = users[email]; return `
${u.name}
${email}
${u.paid?'Paid':'Unpaid'}
`; }).join(''); } } function approveUser(email, pendingIdx){ const users = getUsers(); if(users[email]) users[email].paid = true; saveUsers(users); const pending = getPending(); pending[pendingIdx].approved = true; savePending(pending); loadAdminData(); showNotif('✓ Access granted to '+email,'win'); } function toggleUserAccess(email){ const users = getUsers(); if(users[email]) users[email].paid = !users[email].paid; saveUsers(users); loadAdminData(); } function setAccessMode(mode){ const s = getSettings(); s.accessMode = mode; saveSettings(s); document.getElementById('currentModeLabel').textContent = mode==='free'?'Free for All':'Paid Only'; document.getElementById('modeFreeBtn').style.opacity = mode==='free'?'1':'0.5'; document.getElementById('modePaidBtn').style.opacity = mode==='paid'?'1':'0.5'; showNotif('Access mode set to: '+(mode==='free'?'Free for All':'Paid Only'),''); } function saveBankDetails(){ const s = getSettings(); s.ncbAcct = document.getElementById('adminNCB').value.trim() || 'XXXXXXXX'; s.ncbName = document.getElementById('adminNCBName').value.trim() || 'MillerX Trading'; s.scotiaAcct = document.getElementById('adminScotia').value.trim() || 'XXXXXXXX'; s.scotiaName = document.getElementById('adminScotiaName').value.trim()|| 'MillerX Trading'; saveSettings(s); showNotif('✓ Bank details saved','win'); } function doLogout(){ clearSession(); location.reload(); } // Check session on load (function checkAuthOnLoad(){ const session = getSession(); const settings = getSettings(); const freeMode = settings.accessMode === 'free'; if(session && (session.paid || freeMode)){ enterBot(); } else if(session && !session.paid && !freeMode){ document.getElementById('authPanel').style.display = 'none'; showPayPanel(session.email); } })();