Skip to content

lokinhh/arkm_data_collector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Market Data Tool

Overview

This is a Python-based market data tool with a graphical user interface (GUI) built using Tkinter. The application allows users to manage a list of symbols, start and stop a WebSocket connection for live data, and view stored market data saved as JSON files.

Project Structure

main.py

Entry point of the application. It launches the GUI by instantiating ui.main_form.MainForm.

core/

Contains modules that handle key functionalities:

  • config_manager.py: Manages the configuration and storage of symbol settings.
  • data_storage.py: Handles saving received market data as JSON files in the data/ folder, with timestamps.
  • websocket_client.py: Manages WebSocket connections, including starting and stopping the client.

ui/

Contains the GUI components:

  • main_form.py: Implements the main application window with two tabs:
    • ConfigTab: Provides CRUD operations for symbols, logs actions, and controls the WebSocket connection (start/stop).
    • DataTab: Loads and displays stored market data with filtering options.

data/

Directory where JSON files containing market data are stored.

build/

Contains build artifacts generated by tools such as PyInstaller. Files such as main.exe and related TOC files can be found here.

.gitignore

Specifies files and directories to ignore, including build artifacts and caches.

Installation

Requirements

  • Python 3.11
  • Tkinter (bundled with Python)
  • Additional Python packages:
    • requests
    • websocket-client
    • tkcalendar

Installing Dependencies

Use pip to install the required packages:

pip install -r requirements.txt

Running the Application

To start the application, run the following command:

python main.py

This command launches the GUI, where you can manage symbols, control the WebSocket connection, and view market data.

Additional Information

Configuration and Logging

The ConfigTab in main_form.py allows users to add and remove symbols, and logs system messages with different levels (info, error).

Data Handling

The DataTab in main_form.py reads JSON files from the data/ folder, applying filters based on user input, and displays data in a tabular format.

Build Artifacts

Files under the build/ folder are generated by build tools and are excluded by the .gitignore file.

License

This project is distributed under the terms specified in your preferred license.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages