Untitled
unknown
plain_text
2 years ago
4.7 kB
7
Indexable
<script> document.addEventListener('DOMContentLoaded', function () { fetch('https://api.binance.com/api/v3/exchangeInfo') .then(response => response.json()) .then(data => { const symbols = data.symbols.filter(item => item.symbol.endsWith('USDT')).map(item => item.symbol); const selectElement = document.getElementById('symbol'); symbols.forEach(symbol => { const option = document.createElement('option'); option.value = symbol; option.textContent = symbol; selectElement.appendChild(option); }); }) .catch(error => { console.error('An error occurred:', error); }); }); function startSocket() { var symbol = document.getElementById("symbol").value; var interval = document.getElementById("interval").value; fetch(`https://api.binance.com/api/v1/klines?symbol=${symbol.toUpperCase()}&interval=${interval}`) .then(response => response.json()) .then(data => { var chartData = data.map(item => [ item[0], parseFloat(item[1]), parseFloat(item[2]), parseFloat(item[3]), parseFloat(item[4]) ]); // Fibonacci seviyelerini hesapla var fibonacciLevels = calculateFibonacciLevels(chartData); // Grafik oluştur ve Fibonacci seviyelerini ekle Highcharts.stockChart('chart', { rangeSelector: { selected: 1 }, title: { text: `${symbol} Candlestick Chart with Fibonacci Levels` }, series: [{ type: 'candlestick', name: 'Candlestick', data: chartData }, { type: 'line', name: 'Fibonacci Level 0', data: [[chartData[0][0], fibonacciLevels.level0], [chartData[chartData.length - 1][0], fibonacciLevels.level0]], color: 'red', lineWidth: 2 }, { type: 'line', name: 'Fibonacci Level 0.236', data: [[chartData[0][0], fibonacciLevels.level236], [chartData[chartData.length - 1][0], fibonacciLevels.level236]], color: 'green', lineWidth: 2 }, { type: 'line', name: 'Fibonacci Level 0.382', data: [[chartData[0][0], fibonacciLevels.level382], [chartData[chartData.length - 1][0], fibonacciLevels.level382]], color: 'blue', lineWidth: 2 }, { type: 'line', name: 'Fibonacci Level 0.618', data: [[chartData[0][0], fibonacciLevels.level618], [chartData[chartData.length - 1][0], fibonacciLevels.level618]], color: 'purple', lineWidth: 2 }, { type: 'line', name: 'Fibonacci Level 1', data: [[chartData[0][0], fibonacciLevels.level1], [chartData[chartData.length - 1][0], fibonacciLevels.level1]], color: 'orange', lineWidth: 2 }] }); var timeDiv = document.getElementById('time'); var now = new Date(); var options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric', hour: 'numeric', minute: 'numeric', second: 'numeric', timeZone: 'Europe/Istanbul' }; timeDiv.innerHTML = 'Zaman: ' + now.toLocaleDateString('tr-TR', options); // WebSocket bağlantısı var socket = new WebSocket(`wss://stream.binance.com:9443/ws/${symbol.toLowerCase()}@trade`); socket.onopen = function (event) { console.log(`Connected to Binance WebSocket for ${symbol}`); }; socket.onmessage = function (event) { var liveData = JSON.parse(event.data); console.log(`Received live data for ${symbol}: `, liveData); // Grafik üzerinde canlı veriyi güncelleyin // Grafikteki son mum çubuğunu canlı veriyle güncellemek için gerekli işlemleri yapın }; socket.onclose = function (event) { console.log(`Connection closed for ${symbol}`); }; }) .catch(error => console.error('Error:', error)); } function calculateFibonacciLevels(data) { const highPrices = data.map(item => item[2]); const lowPrices = data.map(item => item[3]); const maxPrice = Math.max(...highPrices); const minPrice = Math.min(...lowPrices); const diff = maxPrice - minPrice; return { level0: maxPrice, level236: maxPrice - (0.236 * diff), level382: maxPrice - (0.382 * diff), level618: maxPrice - (0.618 * diff), level1: minPrice }; } </script> </body> </html>
Editor is loading...
Leave a Comment