Project Info
Inspiration
The inspiration for CryptoWise stemmed from the dynamic and often unpredictable nature of the cryptocurrency market. We recognized the need for a comprehensive platform that not only provides real-time data but also offers intelligent insights and automated trading capabilities. Our goal was to empower traders, researchers, and enthusiasts with tools that enhance decision-making and streamline trading processes.
What it does
CryptoWise is an all-in-one platform designed to revolutionize the cryptocurrency trading experience. It offers: Real-Time Data Visualization: Users can view up-to-the-minute cryptocurrency values and trends through interactive charts. Intelligent Query Handling: A chatbot integrated with advanced LLM technology answers queries related to real-time, historical, and generic cryptocurrency data. Automated Trading: The platform includes a predictive model that suggests Buy, Sell, or Hold actions based on real-time data analysis, with the capability to execute trades automatically when conditions are met.
How we built it
We built CryptoWise using a combination of cutting-edge technologies: Data Acquisition: Integrated WebSocket APIs to fetch real-time cryptocurrency data, which is stored in SingleStore Database for fast retrieval and analytics. Visualization: Used SingleStore's analytics API to create dynamic charts that display changing market trends. Chatbot Integration: Leveraged the GROQ API and OpenAI 3.5 Turbo model to develop a chatbot capable of handling complex queries about cryptocurrency. Predictive Modeling: Developed a model trained on real-time and historical data from Kraken's WebSocket and OHLC APIs to make trading decisions. Automated Trading with Smart Contracts: Utilized smart contracts for executing trades securely. MetaMask authentication ensures secure access to users' wallets using private keys. Initially planned integration with Fetch.ai's agent-based tools faced challenges due to technical integration complexity and resource allocation constraints.
Challenges we ran into
Throughout the development of CryptoWise, we faced several challenges: Data Integration: Ensuring seamless integration of real-time data from multiple sources was complex and required robust solutions. Model Training: Continuously training the predictive model on diverse datasets to maintain accuracy was demanding. User Interface Design: Creating an intuitive and user-friendly interface that effectively displays complex data was challenging but crucial for user engagement. Agent-Based Trading Integration: The complexity of integrating Fetch.ai's agents with our existing infrastructure proved challenging, along with resource limitations.
Accomplishments we're proud of
We are proud of several key accomplishments: Seamless Data Flow: Successfully integrated various data sources into a cohesive platform that delivers real-time insights. Advanced AI Integration: Implemented a sophisticated chatbot that enhances user interaction with accurate and relevant responses. Automated Trading Feature: Developed an automated trading system using smart contracts that executes trades based on predictive analytics, offering users a competitive edge.
What we learned
The development of CryptoWise taught us invaluable lessons: Importance of Data Accuracy: Real-time accuracy is critical in financial applications, necessitating rigorous testing and validation. AI Capabilities: Leveraging AI for query handling and decision-making can significantly enhance user experience and platform functionality. User-Centric Design: Designing with the user in mind is essential for creating an engaging and effective interface.
What's next
Looking ahead, we plan to expand CryptoWise's capabilities by: Enhanced Predictive Analytics: Further refining our models to improve prediction accuracy and broaden the range of supported cryptocurrencies. User Personalization: Introducing features that allow users to customize their experience based on individual preferences and trading strategies. Community Engagement: Building a community around CryptoWise where users can share insights, strategies, and feedback to continuously improve the platform. CryptoWise aims to set a new standard in cryptocurrency trading by combining powerful analytics with intuitive design, making it an indispensable tool for anyone involved in the crypto market. Overview This section provides details about the various API endpoints used in the CryptoWise platform, categorized according to their role in the architecture. Automated Trading Automated Purchase Endpoint URL: http://146.190.123.50:4000/api/simulate-purchase Purpose: Simulates the purchase of cryptocurrency based on model predictions. URL: http://146.190.123.50:4000/api/simulate-purchase Purpose: Simulates the purchase of cryptocurrency based on model predictions. Query Handling Query to LLM URL: http://146.190.123.50:4000/query Purpose: Sends user queries to the LLM for categorization and response generation. URL: http://146.190.123.50:4000/query Purpose: Sends user queries to the LLM for categorization and response generation. Data Acquisition Kraken WebSocket API URL: wss://ws.kraken.com/ Purpose: Provides real-time cryptocurrency data for live updates. Kraken WebSocket API URL: wss://ws.kraken.com/ Purpose: Provides real-time cryptocurrency data for live updates. Historical Data URL: https://api.kraken.com/0/public/OHLC Purpose: Fetches historical price data for cryptocurrencies. Historical Data URL: https://api.kraken.com/0/public/OHLC Purpose: Fetches historical price data for cryptocurrencies. Machine Learning ML Prediction API URL: http://146.190.123.50:5000/prediction Purpose: Provides predictions on Buy, Sell, or Hold actions based on real-time data analysis. URL: http://146.190.123.50:5000/prediction Purpose: Provides predictions on Buy, Sell, or Hold actions based on real-time data analysis. Analytics Bollinger Bands URL: http://146.190.123.50:4000/api/analytics/bollinger-bands?coin=XBT&period=20&stdDev=2 Purpose: Calculates Bollinger Bands for specified cryptocurrency and period. Bollinger Bands URL: http://146.190.123.50:4000/api/analytics/bollinger-bands?coin=XBT&period=20&stdDev=2 Purpose: Calculates Bollinger Bands for specified cryptocurrency and period. Historical Volatility URL: http://146.190.123.50:4000/api/analytics/historical_volatility?coin=XBT Purpose: Computes historical volatility for the specified cryptocurrency. Historical Volatility URL: http://146.190.123.50:4000/api/analytics/historical_volatility?coin=XBT Purpose: Computes historical volatility for the specified cryptocurrency. Stats URL: http://146.190.123.50:4000/api/analytics/stats Purpose: Provides statistical analysis of cryptocurrency data. Stats URL: http://146.190.123.50:4000/api/analytics/stats Purpose: Provides statistical analysis of cryptocurrency data. Candle Data URL: http://146.190.123.50:4000/api/analytics/get_candle_data?coin=XBT Purpose: Retrieves candlestick data for detailed market analysis. Candle Data URL: http://146.190.123.50:4000/api/analytics/get_candle_data?coin=XBT Purpose: Retrieves candlestick data for detailed market analysis.
Sample Hardhat Project
This project demonstrates a basic Hardhat use case. It comes with a sample contract, a test for that contract, and a Hardhat Ignition module that deploys that contract.
Try running some of the following tasks:
npx hardhat help
npx hardhat test
REPORT_GAS=true npx hardhat test
npx hardhat node
npx hardhat ignition deploy ./ignition/modules/Lock.js
Analysis
View
Metric
- 10
- 5
- 1
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- ExpressIn code
- JavaScriptIn code
- OpenAIIn code
- SolidityIn code
- SQLIn code
- Node.jsClaimed
- PythonClaimed
- ReactClaimed
5 of 8 appear in the indexed code. 3 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
58 KB
Source files
19
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
sohail-coder/kraken-analytics-backend
24 files · 85 KB · @ 8078e3d
Structure
API & routing
3 files · 13%Request entry points: routes, handlers and controllers.
Application logic
10 files · 42%Domain rules, services and shared utilities.
+1 moreData & schema
2 files · 8%Schema definitions, migrations and data access.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript95%
- Solidity3%
- SQL2%
- Markdown1%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 16- @crypto-act/kraken-websocket-library
- @sanity/client
- axios
- cors
- express
- groq-sdk
- mysql2
- node-fetch
- openai
- socket.io
- winston
- ws
- +4 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
Feature verification
Automated trading execution triggered by predictionsVerified
Capability to execute trades automatically when conditions are met based on predictive analytics.
Claimed on Devposthigh confidencesrc/server.js:197— If predicted accuracy > 60, code automatically calls purchaseSimulator.buy() to execute an on-chain purchase transaction.
Automated trading via smart contract (PurchaseSimulator)Verified
Utilized smart contracts for executing trades securely; simulate-purchase API endpoint.
Claimed on Devposthigh confidencecontracts/PurchaseSimulator.sol:8— buy() function requires a minimum fee, emits PurchaseMade event, and refunds the sender, matching the 'simulate purchase' behavior.src/server.js:255— POST /api/simulate-purchase endpoint validates an Ethereum address and calls purchaseSimulator.buy() via ethers.js, matching the documented endpoint exactly.
Chatbot / intelligent query handling for crypto dataVerified
A chatbot integrated with advanced LLM technology answers queries related to real-time, historical, and generic cryptocurrency data.
Claimed on Devpostmedium confidencesrc/services/groqService.js:38— handleQuery() categorizes the query and dispatches to real-time (Kraken WebSocket), historical (Kraken OHLC REST), or generic LLM response paths.src/server.js:37— POST /query endpoint wires handleQuery into the Express app.src/services/groqService.js:5— Discrepancy: despite the claim and the groq-sdk dependency in package.json, the actual LLM calls use the OpenAI SDK (gpt-3.5-turbo), not the GROQ API.
Historical data retrieval from Kraken OHLC APIVerified
Historical Data endpoint fetches historical price data for cryptocurrencies from Kraken's OHLC API.
Claimed on Devposthigh confidencesrc/services/groqService.js:90— fetchHistoricalData() calls https://api.kraken.com/0/public/OHLC?pair=... and parses open/high/low/close/volume/trades.
Real-time cryptocurrency data acquisition (Kraken WebSocket, stored in SingleStore)Verified
Integrated WebSocket APIs to fetch real-time cryptocurrency data, stored in SingleStore Database for fast retrieval and analytics.
Claimed on Devposthigh confidencesrc/services/websocketService.js:11— Opens a WebSocket connection to wss://ws.kraken.com, subscribes to ticker channel, parses messages and builds a ticker record.src/services/websocketService.js:82— Calls tickerModel.insertTickerRecord(record) to persist parsed ticker data.src/config/dbConfig.js:19— Creates a mysql2 connection pool with SSL to a SingleStore-compatible DB using DB_HOST/DB_NAME env vars.
SingleStore analytics API (Bollinger Bands, historical volatility, stats, candle data)Verified
Used SingleStore's analytics API to create dynamic charts; endpoints for Bollinger Bands, Historical Volatility, Stats, and Candle Data.
Claimed on readmehigh confidencesrc/routes/analyticsRoutes.js:35— Defines /bollinger-bands, /historical_volatility/, /stats, /get_candle_data routes matching the documented API endpoints exactly.src/services/singlestoreService.js:155— getBollingerBands computes SMA/upper/lower bands from ticker close prices.src/services/singlestoreService.js:333— getHistoricalVolatile computes rolling STDDEV of log returns over 30 days.src/services/singlestoreService.js:304— getCoinStats returns best ask/bid, max/min volume and price across coins.src/services/singlestoreService.js:380— getCandleData builds OHLC candlestick rows via window functions.
Real-time data visualization with interactive chartsCode-supported
Users can view up-to-the-minute cryptocurrency values and trends through interactive charts.
Claimed on Devpostmedium confidencesrc/server.js:128— Server emits 'analyticsUpdate' and 'statsUpdate' events over Socket.IO, which a frontend chart could consume, but no frontend/charting code (React, Chart.js, D3, etc.) exists anywhere in this repo.
Fetch.ai agent-based trading integrationClaimed only
Initially planned integration with Fetch.ai's agent-based tools faced challenges due to technical integration complexity.
Claimed on Devposthigh confidenceMetaMask authentication for wallet accessClaimed only
MetaMask authentication ensures secure access to users' wallets using private keys.
Claimed on Devposthigh confidenceReact frontend UIClaimed only
Built with react (per Devpost 'Built With' tags), implying a frontend for charts/chat/trading UI.
Claimed on Devposthigh confidencePredictive ML model for Buy/Sell/Hold decisionsBlocked
The platform includes a predictive model that suggests Buy, Sell, or Hold actions based on real-time data analysis, trained on Kraken WebSocket and OHLC data.
Claimed on Devpostmedium confidencesrc/server.js:174— Server polls an external prediction API at http://146.190.123.50:5000/prediction every 10s and reads decision/processed_vectors from the response, but the model/training code itself is not present in this repository (external service only).
An AI agent derived these features from the project’s Devpost page and readme, then searched the code for each one. Verified features are backed by cited code; claimed-only features had no supporting code, which is not by itself proof a feature is missing.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.