Skip to content

nexxusss/KakiQuant

 
 

Repository files navigation

KakiQuant - Your personalized quantitative analysis platform

KakiQuant Project aims to provide an AI-ready toolkit for Quant developers and a minimalistic web interface for traditional traders to keep the pace of AI-Quant-Trading.

Features include:

  • Datasource service that can provide completed financial data at low cost, and local Databases to enjoy low latency streaming
  • Ready for AI, we will setup a framework where traditional ML toolkits, DNN-based solutions, and innovative models are introduced by Quant journals.
  • Easy to use, we will finally provide high-level wrappers, such as flowcharts, that people can drag blocks and assemble a strategy.

Developing Progress

This project is currently in the early stages, we are continuously adding more features and making the code base more robust. We will always maintain a publicly available branch for developers. In KakiQuant, you are able to find:

  • Profitable Strategies
  • Daily advice
  • AI portfolio management
  • More ...

Basic Features

  • Datafeeding: Downloading, Cleaning, Reading, Updating
  • Factor Analysis: Single Factor validation, Multi-Factor model, Barra, etc
  • Basic ML: K-Means, Lightgbm, Gplearn, Graph Neural Networks, Hidden Markov Models...

Advanced Features

  • RL: Portfolio Management(MARL)
  • DL: Time-series models

Getting Started

# We recommend you to create a conda environment in case of any incompatibilities

# Our code is developed on python3.10
conda create -n quant python=3.10
cd /path_to_Kakiquant
pip install -e . # For developers

Features

The following is a list of some of the features. Expect to see this list grow as we continuously work on implementing new features!

  • Similarity Klines to get the most correlated indexes to the target.
  • Graph Neural Network to generate a list of the 10 most similar indexes
  • Hidden Markov Model.
  • Access the data through our Database

Reporting Issues

We value your contributions and strive to make the process of reporting issues as smooth as possible. If you encounter a problem or have a suggestion, please follow these guidelines to help us address your concerns effectively.

Before Reporting an Issue

  • Check Existing Issues: Before creating a new issue, please check already existing ones, to see if the issue or feature request has already been filed. Make sure to check closed issues as well.
  • Gather Information: Collect as much information as possible about the issue. This could include steps to reproduce the problem, the version of the software you're using, and relevant configuration details.
  • Attempt to Reproduce: If you encounter a bug, try to reproduce it consistently. If the issue is intermittent, provide details about how often and under what conditions it occurs.

How to Report a New Issue

  1. Use the Issue Template: Determine what is wrong and why. Head to the issue section of this repository.

  2. Describe the Bug/Feature: Clearly describe the issue you are experiencing or the feature you are proposing. Include any error messages, stack traces, screenshots, or other artifacts that would be helpful.

  3. Steps to Reproduce: If applicable, provide a step-by-step guide on how to reproduce the bug.

  4. Expected Behavior: Describe what you expected to happen when you encountered the bug.

  5. Actual Behavior: Describe what happened. Include any error messages or unexpected outcomes.

  6. Possible Solution: If you have an idea of how to fix the bug or implement the feature, suggest it here.

  7. Additional Context: Add any other context about the problem or feature request here. This might include the impact of the issue, workarounds you have tried, or links to similar issues.

After Reporting an Issue

  • Patience is Key: After you submit an issue, the maintainers will need time to investigate and respond. We appreciate your patience as we work to resolve your issue.
  • Follow-Up: You may be asked to provide

Authors

  • Shengyang Wang - Data Science, class of 2026, Duke Kunshan University - Github
  • Nizar Talty - Data Science, class of 2026, Duke Kunshan University - Github
  • Renzo Balcazar Tapia - Data Science, class of 2025, Duke Kunshan University - Github

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 95.0%
  • Python 5.0%