To run the code in this repository, you will need the following dependencies:
- Python (>=3.6)
- NumPy
- pandas
- scikit-learn
- XGBoost
The dataset files are downloaded from yahoo finance website. Additional datasets can be downloaded from this website.
Detailed Explanation of working of the project:
- Set up the Development Environment: Install necessary programming languages and libraries, such as Python and its data science libraries (e.g., pandas, scikit-learn, XGBoost). Set up a development environment using an integrated development environment (IDE) like Google Colaboratory or Jupyter Notebook.
- Data Collection: Choose a reliable source for historical cryptocurrency price data, such as Yahoo Finance or cryptocurrency exchanges. Use APIs or web scraping techniques to retrieve historical price data for multiple cryptocurrencies. 3.Data Preprocessing: Clean the raw data by handling missing values, outliers, and inconsistencies. Normalize or standardize numerical features to ensure uniformity in scale. Encode categorical variables if necessary and handle any other data preprocess�ing tasks.
- Split Data: Split the preprocessed dataset into training and testing subsets, typically using an 80-20 or 70-30 split ratio. Ensure that the training set contains historical data for model training, while the testing set is reserved for evaluating prediction performance.
- Model Training: Initialize an XGBoost regression model with default hyperparameters or initial values. Optimize model hyperparameters using techniques such as grid search or random search to improve prediction accuracy. Fit the model to the training data using the XGBoost algorithm, allowing it to learn patterns and relationships between features and target variables.
- Prediction Generation: Once the model is trained and optimized, apply it to the testing data subset to generate cryptocurrency price predictions. Utilize the trained model to predict future cryptocurrency prices based on historical data and relevant features.
- Perfomance Evaluation: Evaluate the performance of the predictions using appropriate metrics such as Mean Absolute Error (MAE) and Root Mean Squared Error (RMSE). Compare the predicted prices with actual prices to assess the accuracy and reliability of the prediction model.
- Visualization and Interpretation: Visualize the predicted cryptocurrency price trends using graphical representations such as line charts or candlestick plots. Analyze the predicted trends to identify potential opportunities for trading or investment strategies. Interpret the model’s predictions and performance metrics to gain insights into the accuracy and reliability of the cryptocurrency price prediction.