<!-- -- Uploaded on : https://haxor.my.id/open/xptrader0.html -- Official Web : https://prinsh.com -- script-deface-generator.prinsh.com --> <html lang="en"> <head> <title>XP OTC FUTURE SIGNAL SOFTWARE</title> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous" /> <link href="https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@200;400;700&display=swap" rel="stylesheet" /> <!-- estilização --> <style> body2 { font-family: Arial, sans-serif; } .container2 { max-width: 600px; margin: 50px auto; padding: 20px; border: 1px solid #ccc; border-radius: 5px; text-align: center; } </style> <style> * { font-family: 'Roboto Slab', serif; } .show-on-mobile { display: none; width: 100%; background: #003087; padding: 20px; margin-bottom: 25px; } .wrapper { display: flex; align-items: center; justify-content: center; flex: 1; height: 100vh; overflow-x: hidden; } .wrapper .main-form { display: flex; align-items: center; justify-content: space-evenly; flex-direction: column; flex: 1; height: 100%; padding: 15px; } .wrapper .main-form form { width: 80%; } .wrapper .main-form form .split-size { width: 100%; display: flex; align-items: flex-start; justify-content: space-between; } .wrapper .main-form form .split-size .form-group { width: 49%; } .wrapper .caption-area { display: flex; align-items: center; justify-content: center; flex: 1; background: #003087 url(https://i.imgur.com/5ZybQHM.png) no-repeat 100% 100% / contain; height: 100%; padding: 15px; position: relative; } .wrapper .caption-area .logo img { position: absolute; right: 50%; top: 25px; width: 35%; transform: translateX(50%); } .btn-primary { background-color: #36c763; border-color: #36c763; } .btn-primary:hover { background-color: #36c763; border-color: #36c763; } @media (max-width: 1000px) { .wrapper .main-form form { width: 90%; } .wrapper .main-form { overflow-y: scroll; } .wrapper .caption-area { background: #003087 url(https://i.imgur.com/5ZybQHM.png) no-repeat 100% 100% / cover; } .wrapper .caption-area .logo img { width: 55%; } .wrapper .main-form form .split-size { flex-direction: column; } .wrapper .main-form form .split-size .form-group { width: 100%; } } @media (max-width: 850px) { .wrapper { height: auto; } .show-on-mobile { display: flex; align-items: center; justify-content: center; width: 100%; } .show-on-mobile img { width: 45%; } .wrapper .main-form { width: 100%; flex: initial; } .wrapper .caption-area { display: none; } .wrapper .main-form { background: #003087; } .wrapper .main-form form { width: 80%; background: #fff; padding: 20px; -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.15); box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15); border-radius: 10px; } .wrapper .main-form form .split-size { flex-direction: initial; } .wrapper .main-form form .split-size .form-group { width: 49%; } } @media (max-width: 580px) { .wrapper .main-form form { width: 90%; } .wrapper .main-form { overflow-y: scroll; } .wrapper .main-form form .split-size { flex-direction: column; } .wrapper .main-form form .split-size .form-group { width: 100%; } } </style> </head> </head> <body2> <div class="container2"> <h2>XP TRADER FUTURE SIGNAL SOFTWARE</h2> <p>Please enter password to get high accuracy future signal:</p> <input type="password" id="passwordInput"> <button onclick="checkPassword()">Submit</button> <p id="errorMessage" style="color: red; display: none;">Incorrect password. CONTACT WITH JOYxA.</p> <div id="protectedContent" style="display: none;"> <p>Welcome! Here's the XP FUTURE SIGNAL SOFTWARE.</p> <html lang="pt"> <body> <div class="wrapper"> <div class="main-form"> <form> <div class="form-group"> <label class="control-label" for="active">Use It Only on otc & Love It { Choose Assets }</label> <select class="form-control" name="cbAtivo" id="cbAtivo"> <option value="0" selected="">All ASSETS</option> <option value="AUD_CAD">AUD_CAD_OTC_QTX</option> <option value="AUD_CHF">AUD_CHF_OTC_QTX</option> <option value="AUD_JPY">AUD_JPY_OTC_QTX</option> <option value="AUD_USD">AUD_USD_OTC_QTX</option> <option value="CAD_JPY">CAD_JPY_OTC_QTX</option> <option value="EUR_AUD">EUR_AUD_OTC_QTX</option> <option value="EUR_CAD">EUR_CAD_OTC_QTX</option> <option value="EUR_CHF">EUR_CHF_OTC_QTX</option> <option value="EUR_GBP">EUR_GBP_OTC_QTX</option> <option value="EUR_JPY">EUR_JPY_OTC_QTX</option> <option value="EUR_NZD">EUR_NZD_OTC_QTX</option> <option value="EUR_USD">EUR_USD_OTC_QTX</option> <option value="GBP_AUD">GBP_AUD_OTC_QTX</option> <option value="GBP_CAD">GBP_CAD_OTC_QTX</option> <option value="GBP_CHF">GBP_CHF_OTC_QTX</option> <option value="GBP_JPY">GBP_JPY_OTC_QTX</option> <option value="GBP_NZD">GBP_NZD_OTC_QTX</option> <option value="GBP_USD">GBP_USD_OTC_QTX</option> <option value="NZD_CHF">NZD_CHF_OTC_QTX</option> <option value="NZD_USD">NZD_USD_OTC_QTX</option> <option value="USD_CAD">USD_CAD_OTC_QTX</option> <option value="USD_CHF">USD_CHF_OTC_QTX</option> <option value="USD_JPY">USD_JPY_OTC_QTX</option> <option value="XAU_USD">XAU_USD _ GOLD_OTC_QTX</option> </select> </div> <div class="split-size"> <div class="form-group"> <label class="control-label" for="active">Minimum Percentage:</label> <select class="form-control" name="minutos_offset" id="selPercentageMin"> <option value="90">90%</option ><option value="91">91%</option ><option value="92">92%</option ><option value="93">93%</option ><option value="94">94%</option ><option value="95">95%</option ><option value="96">96%</option ><option value="97">97%</option ><option value="98">98%</option ><option value="99">99%</option ><option value="100" selected>100%</option> </select> </div> <div class="form-group"> <label class="control-label" for="active">Maximum Percentage:</label> <select class="form-control" name="minutos_offset" id="selPercentageMax"> <option value="97">97%</option ><option value="98">98%</option ><option value="99">99%</option ><option value="100" selected>100%</option> </select> </div> </div> <div class="split-size"> <div class="form-group"> <label class="control-label" for="active">Expiration Time :</label> <select class="form-control" name="cbTimeFrame" id="selCandleTime" ><option value="M1" selected>M1</option> <option value="M4" selected>M2</option> ><option value="M5" selected>M5</option> <option value="M15" selected>M15</option ><option value="M30">M30</option ><option value="H1">H1</option ><option value="H2">H2</option ><option value="H4">H4</option> </select> </div> <div class="form-group"> <label class="control-label" for="active">OTC DAY'S to be analyzed:</label> <select class="form-control" name="Values To Check" id="selDays"> <option value="1">1</option ><option value="2">2</option ><option value="3">3</option ><option value="4">4</option ><option value="5">5</option ><option value="6">6</option ><option value="7">7</option ><option value="8">8</option ><option value="9">9</option ><option value="10">10</option ><option value="11">11</option ><option value="12">12</option ><option value="13">13</option ><option value="14">14</option ><option value="15">15</option ><option value="16">16</option ><option value="17">17</option ><option value="18">18</option ><option value="19">19</option ><option value="20" selected="">20</option ><option value="21">21</option ><option value="22">22</option ><option value="23">23</option ><option value="24">24</option ><option value="25">25</option ><option value="26">26</option ><option value="27">27</option ><option value="28">28</option ><option value="29">29</option ><option value="30">30</option ><option value="31">31</option ><option value="32">32</option ><option value="33">33</option ><option value="34">34</option ><option value="35">35</option ><option value="36">36</option ><option value="37">37</option ><option value="38">38</option ><option value="39">39</option ><option value="40">40</option ><option value="41">41</option ><option value="42">42</option ><option value="43">43</option ><option value="44">44</option ><option value="45">45</option ><option value="46">46</option ><option value="47">47</option ><option value="48">48</option ><option value="49">49</option ><option value="50">50</option ><option value="51">51</option ><option value="52">52</option > </select> </div> </div> <div class="form-group"> <label class="control-label" for="active">Number of Martingales:</label> <select class="form-control" name="cbTimeFrame" id="selMartingales"> <option value="0" selected>0</option ><option value="1">1</option ><option value="2">2</option ><option value="3">3</option > </select> </div> </div> </div> <div class="form-group"> <label class="control-label" for="active">DIRECTION TYPE:</label> <select class="form-control" name="cbTimeFrame" id="selOrderType"> <option value="PUT" selected>PUT</option ><option value="CALL">CALL</option> </select> </div> <center> <a href="https://t.me/+-JIRU9owKpg3NDI1"target="_blank"> "JOIN XP TRADER OFFICIAL PUBLIC GRUOP"</center></a> <small><small> <button type="button" onclick="getHistoric()" class="btn btn-primary btn-lg btn-block"> Generate Signals </button> <center><h2> <i><tt> " JOIN XP TRADER OFFICIAL PUBLIC GRUOP FOR FREE LIVE SIGNAL " </tt></i></h2></center> <center><h5></h5></center> </form> </div> </div> <!-- Script import --> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous" ></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous" ></script> <!-- Scripts --> <script> hoje = new Date(); dia = hoje.getDate() + 0; dias = hoje.getDay() + 1; mes = hoje.getMonth() + 1; ano = hoje.getYear(); var listBestPairTimes = []; var listPairs = [ "EUR_USD", "GBP_AUD", "EUR_AUD", "EUR_JPY", "GBP_CAD", "USD_JPY", "EUR_CHF", "AUD_CAD", "GBP_CHF", "EUR_GBP", "AUD_CHF", "CAD_JPY", "GBP_JPY", "EUR_CAD", "AUD_JPY", "GBP_NZD", ]; var percentageMin = 100; var percentageMax = 100; var candleTime = 'M5'; var daysAnalyse = 20; var martingales = 0; var orderType = 'PUT'; var timeInit = 2; var timeEnd = 18; var requestNumber = 0; //First action when clicking on PROCESS DATA button function getHistoric() { $('body').css('cursor', 'progress'); listBestPairTimes = []; getParameter(); //I check if the Asset field is in All Assets if not it searches for the selected asset if (cbAtivo == 0) { requestNumber = listPairs.length; } else { listPairs = [cbAtivo]; requestNumber = listPairs.length; } var count = CalculateCountCandles(); if (count > 50000) { alert('The number of candles exceeds 50,000, please decrease the number of days analyzed'); return; } for (var i = 0; i < listPairs.length; i++) { var currentPair = listPairs[i]; callHistoricData(currentPair, count, cbAtivo); } } function getParameter() { percentageMin = $('#selPercentageMin').val(); percentageMax = $('#selPercentageMax').val(); candleTime = $('#selCandleTime').val(); daysAnalyse = $('#selDays').val(); martingales = $('#selMartingales').val(); orderType = $('#selOrderType').val(); timeInit = $('#selTimeInit').val(); timeEnd = $('#selTimeEnd').val(); cbAtivo = $('#cbAtivo').val(); } function CalculateCountCandles() { var minutes = 15; // DEFAULT FOR M15 switch (candleTime) { case 'M2': minutes = 2; break; case 'M10': minutes = 10; break; case 'M15': minutes = 15; break; case 'M30': minutes = 30; break; case 'H1': minutes = 60; break; case 'H2': minutes = 120; break; case 'H4': minutes = 240; break; } var count = 60 / minutes; count = 24 * count; count = count * daysAnalyse; return count; } function callHistoricData(pair, count, cbAtivo) { var count_i = 0; if (cbAtivo == 0) { //var urlHist = "https://api-fxtrade.oanda.com/v1/candles?instrument="+pair+"&start=1565395200&end=1569283200&granularity=M1"; //var urlHist = "https://api-fxtrade.oanda.com/v1/candles?instrument="+pair+"&start="+startDate+"&end="+endDate+"&granularity="+candleTime+"&candleFormat=midpoint"; //var urlHist = "https://api-fxpractice.oanda.com/v3/instruments/"+pair+"/candles?from="+startDate+"&to="+endDate+"&granularity="+candleTime+""; var urlHist = 'https://api-fxpractice.oanda.com/v3/instruments/' + pair + '/candles?granularity=' + candleTime + '&count=' + count; $.ajax({ url: urlHist, headers: { Authorization: 'Bearer eb2326208921b413a87728832f191f03-d9be68b74884f7d3107b9f05ca305319', }, type: 'GET', success: function (result) { CalculateHistoric(result); }, error: function (error) { ErrorHistoric(error); }, }); } else { if (count_i == 0) { //(cbAtivo == pair && count_i == 0 ){ //alert(cbAtivo); //count_i ++; var urlHist = 'https://api-fxpractice.oanda.com/v3/instruments/' + pair + '/candles?granularity=' + candleTime + '&count=' + count; $.ajax({ url: urlHist, headers: { Authorization: 'Bearer eb2326208921b413a87728832f191f03-d9be68b74884f7d3107b9f05ca305319', }, type: 'GET', success: function (result) { CalculateHistoric(result); }, error: function (error) { ErrorHistoric(error); }, }); } } } function CalculateHistoric(result) { var candles = result.candles; var candlesResult = []; for (var i = 0; i < candles.length;) { var candle = candles[i]; var item = new Object(); item.resultValue = candle.mid.o - candle.mid.c; item.date = ConvertDate(candle.time); item.result = GetStringResult(item.resultValue); item.percentDif = (item.resultValue * 100) / candle.mid.o; if (item.result === orderType) { item.win = true; } else { item.win = false; } //if(CheckTime(item.date)){ var arrayTime = item.date.time.split(':'); if (parseInt(arrayTime[0]) < parseInt(timeInit) || parseInt(arrayTime[0]) > parseInt(timeEnd)) { continue; } candlesResult.push(item); i+=4; } var martinGaleResult = candlesResult; if (martingales > 0) { martinGaleResult = []; for (var i = 0; i < candlesResult.length; i++) { var candle = candlesResult[i]; candle.nextCandles = GetNextMartingales(candlesResult, i); candle.win = candle.win === false ? GetMartingaleResult(candle) : true; martinGaleResult.push(candle); } } var timeGroupedCandles = Array.from(new Set(martinGaleResult.map((s) => s.date.time))).map((time) => { return { time: time, candles: martinGaleResult.filter((s) => s.date.time === time), pair: result.instrument, }; }); for (var i = 0; i < timeGroupedCandles.length; i++) { var currentGroup = timeGroupedCandles[i]; currentGroup.winrate = 0; currentGroup.averageTickDif = 0; for (var z = 0; z < currentGroup.candles.length; z++) { var candle = currentGroup.candles[z]; if (candle.win == true) { currentGroup.winrate++; currentGroup.averageTickDif += item.percentDif; } } currentGroup.averageTickDif = currentGroup.averageTickDif / currentGroup.winrate; currentGroup.winrate = (currentGroup.winrate * 100) / currentGroup.candles.length; if (currentGroup.winrate >= percentageMin && currentGroup.winrate <= percentageMax) { listBestPairTimes.push(currentGroup); continue; } } requestNumber--; if (requestNumber == 0) { DownloadTxt(); } } function CheckTime(date) { var minDate = new Date(); return true; } function GetMartingaleResult(candle) { var anyWin = candle.nextCandles.find((s) => s.win === true); return anyWin != undefined && anyWin != null > 0 ? true : false; } function GetNextMartingales(listCandles, index) { var nextCandles = []; var candle = listCandles[index]; if (martingales > 0 && parseInt(index) + parseInt(martingales) < listCandles.length) { for (var i = 1; i <= martingales; i++) { var nextCandle = listCandles[index + i]; nextCandles.push(nextCandle); } return nextCandles; } else { return nextCandles; } } function DownloadTxt(){ if(listBestPairTimes.length <= 0){ alert('No signal found for the selected winrate and wales range.'); } listBestPairTimes.sort((a, b) => (a.time > b.time) ? 1 : -1) var listNumber = listBestPairTimes.length / 80; var i = 0 var stringList2 = "Join XP TRADER OFFICIAL PUBLIC GRUOP"+candleTime; for(var x = 0; x < listNumber; x++){ var index = 1; var stringList = "DEVLOPER JOYxA and use only on OTC"+candleTime; stringList2 += "\r\n- - - - - - - - - - - - - - - - - - - - - "; for(; i < listBestPairTimes.length; i++){ var candle = listBestPairTimes[i]; var arrayTime = candle.time.split(':'); //alert(candle.pair); for(var z = 0; z < arrayTime.length; z++){ if(arrayTime[z] === "0"){ arrayTime[z] = "00"; } } /* stringList += "\r\nE" + index + "=---------Entrada_" + index + "---------" stringList += "\r\nHora_" + index + "=" + arrayTime[0]; stringList += "\r\nMinuto_" + index + "=" + arrayTime[1]; stringList += "\r\nTipo_" + index + "=" + orderType; stringList += "\r\nPAR_" + index + "=" + candle.pair.replace('_', '') stringList += "\r\nvalor_" + index + "=1.0"; stringList += "\r\nExpiracao_" + index + "=" + candleTime.substring(1, candleTime.length); stringList += "\r\nPermitir_Entrada_" + index + "=true"; */ stringList2 += "\r\n " + "2022" + "-0" + mes + "-" + dia ; stringList2 += "\r\ " + candle.time; stringList2 += "\r\, " + candle.pair.replace('_', '') + "_OTC_QTX" stringList2 += "\r\, " + orderType; stringList2 += "\r\, " + candleTime.substring(1, candleTime.length); stringList2 += "\r\, " + candle.winrate.toFixed(2) + "%"; //stringList2 += "\r\n" + Math.abs(candle.averageTickDif.toFixed(5)); stringList2 += "\r\n- - - - - - - - - - - - - - - - - - - - - "; index++; if(i > 0 && (i+1) % 80 == 0){ i++; break; } } /* stringList += "\r\ns_title_settings====== TRADING SETTINGS ============"; stringList += "\r\nMartingaleType=0"; stringList += "\r\nMartingaleSteps="+martingales; stringList += "\r\nMartingaleCoef=2.2"; */ //download(percentageMin +" - " +percentageMax + '_' + orderType + '_' + candleTime + "ListaSinais_" +parseInt(x+1).toString() + ".set", stringList); } download(percentageMin +" - "+percentageMax + '_' + orderType + '_' + candleTime + '_OTC-YOO .txt', stringList2); } function download(filename, text) { $('body').css('cursor', 'default'); var element = document.createElement('a'); element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text)); element.setAttribute('download', filename); element.style.display = 'none'; document.body.appendChild(element); element.click(); document.body.removeChild(element); } function GetStringResult(value) { if (value > 0) { return 'PUT'; } else if (value < 0) { return 'CALL'; } else { return 'DRAW'; } } function ErrorHistoric(error) { alert('erro'); } function ConvertDate(time) { //var stringDate = unixTimestamp.toString().slice(0, -6); //unixTimestamp = parseInt(stringDate); var dateObj = new Date(time); var timeObj = new Object(); timeObj.date = dateObj; timeObj.time = dateObj.getHours() + ':' + dateObj.getMinutes() + ':' + dateObj.getSeconds(); return timeObj; } $('#formHist').submit(function (e) { e.preventDefault(); return false; }); </script> </body> </html> <!-- Your protected content goes here --> </div> </div> <script> function checkPassword() { var password = document.getElementById("passwordInput").value; // Check if password matches the expected password if (password === "xptrader") { document.getElementById("errorMessage").style.display = "none"; document.getElementById("protectedContent").style.display = "block"; } else { document.getElementById("errorMessage").style.display = "block"; document.getElementById("protectedContent").style.display = "none"; } } </script> </body></html>