kite-order


Namekite-order JSON
Version 0.1.3 PyPI version JSON
download
home_pageNone
SummaryA Python module for placing bracket orders with Zerodha's KiteConnect API, featuring authentication, dashboard, Google Sheets integration, and customizable logging.
upload_time2025-07-19 18:23:15
maintainerNone
docs_urlNone
authorPrasad
requires_python>=3.6
licenseMIT
keywords zerodha kiteconnect trading bracket-orders api google-sheets
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Kite Bracket Orders

A Python module for placing bracket orders with Zerodha's KiteConnect API. It includes features like automated authentication, a dashboard for viewing margins/holdings/positions/orders, Google Sheets integration for trade plans, customizable logging, and market hour checks with AMO (After Market Order) support.

## Features
- **Bracket Order Placement**: Place entry orders with target and stop-loss, including monitoring and modification.
- **Authentication**: Automatic login with dependency installation, config management, and session token handling.
- **Dashboard**: View account margins, holdings, positions, and recent orders in a clean terminal format.
- **Google Sheets Integration**: Load trade plans from a specified sheet for easy data-driven trading.
- **Logging Toggle**: Enable/disable logging to file with a simple flag (no impact on terminal output when disabled).
- **Market Checks**: Detects closed markets/weekends and prompts for AMO orders.


### Dependencies
- kiteconnect
- gspread
- oauth2client
- colorama

These are automatically installed via pip.

## Usage

1. **Setup Credentials**:
   - Create `credentials/config.json` with your Kite API details.
   - Create `credentials/credentials.json` with your Google Service Account key.

2. **Run the Script** (example in order.py):

        from kite_bracket_orders import BracketOrderPlacer, run_login, KiteDashboard
        # Define your order data here (edit as needed for easy order placement - used when choice "1" is selected)
        order_data = {
            "segment": "NSE",                  # "NSE" or "NFO"
            "product_type": "MIS",             # "MIS" or "CNC" or "NRML"
            "side": "SELL",                    # "BUY" or "SELL"
            "entry_order_type": "LIMIT",       # "LIMIT" or "MARKET"
            "sl_type": "SL-M",                 # choose: "SL" or "SL-M"

            "symbol": "IDEA",                  # e.g. "IDEA", "RELIANCE", or "NIFTY24JUL20000CE"
            "quantity": 1,                     # Must match lot size for options; 1+ for stocks
            "entry_price": 7.60,               # Only used if LIMIT order
            "target_price": 7.80,
            "stop_loss_trigger": 7.50,
            "stop_loss_limit": 0               # only used if SL (not SL-M)
        }
        if __name__ == "__main__":
            
            enable_logging = True  # Toggle logging

            run_login() # Handle authentication

            # Show dashboard
            dash = KiteDashboard()
            dash.show_all()

            # Proceed to bracket order
            placer = BracketOrderPlacer(code_data=order_data, enable_logging=enable_logging)  
            placer.load_kite_login_name_show()
            placer.place_bracket_order()


3. **Run**:
python order.py

## Configuration
- **config.json**: Stores Kite API_KEY and ACCESS_TOKEN.
- **credentials.json**: Google Sheets auth.
- **Logging**: Set `enable_logging=False` to disable log files.

## License
MIT License. See LICENSE for details.

## Contributing
Fork the repo and submit a pull request. Issues and feature requests are welcome!

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kite-order",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "zerodha kiteconnect trading bracket-orders api google-sheets",
    "author": "Prasad",
    "author_email": "mr.xprasadx@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/b4/ae/3586e8437f9b34938753f93a6e6511fb3fe103545917124f757a96c5e956/kite_order-0.1.3.tar.gz",
    "platform": null,
    "description": "# Kite Bracket Orders\r\n\r\nA Python module for placing bracket orders with Zerodha's KiteConnect API. It includes features like automated authentication, a dashboard for viewing margins/holdings/positions/orders, Google Sheets integration for trade plans, customizable logging, and market hour checks with AMO (After Market Order) support.\r\n\r\n## Features\r\n- **Bracket Order Placement**: Place entry orders with target and stop-loss, including monitoring and modification.\r\n- **Authentication**: Automatic login with dependency installation, config management, and session token handling.\r\n- **Dashboard**: View account margins, holdings, positions, and recent orders in a clean terminal format.\r\n- **Google Sheets Integration**: Load trade plans from a specified sheet for easy data-driven trading.\r\n- **Logging Toggle**: Enable/disable logging to file with a simple flag (no impact on terminal output when disabled).\r\n- **Market Checks**: Detects closed markets/weekends and prompts for AMO orders.\r\n\r\n\r\n### Dependencies\r\n- kiteconnect\r\n- gspread\r\n- oauth2client\r\n- colorama\r\n\r\nThese are automatically installed via pip.\r\n\r\n## Usage\r\n\r\n1. **Setup Credentials**:\r\n   - Create `credentials/config.json` with your Kite API details.\r\n   - Create `credentials/credentials.json` with your Google Service Account key.\r\n\r\n2. **Run the Script** (example in order.py):\r\n\r\n        from kite_bracket_orders import BracketOrderPlacer, run_login, KiteDashboard\r\n        # Define your order data here (edit as needed for easy order placement - used when choice \"1\" is selected)\r\n        order_data = {\r\n            \"segment\": \"NSE\",                  # \"NSE\" or \"NFO\"\r\n            \"product_type\": \"MIS\",             # \"MIS\" or \"CNC\" or \"NRML\"\r\n            \"side\": \"SELL\",                    # \"BUY\" or \"SELL\"\r\n            \"entry_order_type\": \"LIMIT\",       # \"LIMIT\" or \"MARKET\"\r\n            \"sl_type\": \"SL-M\",                 # choose: \"SL\" or \"SL-M\"\r\n\r\n            \"symbol\": \"IDEA\",                  # e.g. \"IDEA\", \"RELIANCE\", or \"NIFTY24JUL20000CE\"\r\n            \"quantity\": 1,                     # Must match lot size for options; 1+ for stocks\r\n            \"entry_price\": 7.60,               # Only used if LIMIT order\r\n            \"target_price\": 7.80,\r\n            \"stop_loss_trigger\": 7.50,\r\n            \"stop_loss_limit\": 0               # only used if SL (not SL-M)\r\n        }\r\n        if __name__ == \"__main__\":\r\n            \r\n            enable_logging = True  # Toggle logging\r\n\r\n            run_login() # Handle authentication\r\n\r\n            # Show dashboard\r\n            dash = KiteDashboard()\r\n            dash.show_all()\r\n\r\n            # Proceed to bracket order\r\n            placer = BracketOrderPlacer(code_data=order_data, enable_logging=enable_logging)  \r\n            placer.load_kite_login_name_show()\r\n            placer.place_bracket_order()\r\n\r\n\r\n3. **Run**:\r\npython order.py\r\n\r\n## Configuration\r\n- **config.json**: Stores Kite API_KEY and ACCESS_TOKEN.\r\n- **credentials.json**: Google Sheets auth.\r\n- **Logging**: Set `enable_logging=False` to disable log files.\r\n\r\n## License\r\nMIT License. See LICENSE for details.\r\n\r\n## Contributing\r\nFork the repo and submit a pull request. Issues and feature requests are welcome!\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python module for placing bracket orders with Zerodha's KiteConnect API, featuring authentication, dashboard, Google Sheets integration, and customizable logging.",
    "version": "0.1.3",
    "project_urls": null,
    "split_keywords": [
        "zerodha",
        "kiteconnect",
        "trading",
        "bracket-orders",
        "api",
        "google-sheets"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "42df687ec508c02499bd478d3b512c9f9b8c5665efd3eaa64d1131a9e44a807f",
                "md5": "55dc79b1fba0f3696292371828f13103",
                "sha256": "77a4356c9a5374e6e7ae59a345c26d96471a8ddf1eed25b662700040ac31a118"
            },
            "downloads": -1,
            "filename": "kite_order-0.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "55dc79b1fba0f3696292371828f13103",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 13894,
            "upload_time": "2025-07-19T18:23:13",
            "upload_time_iso_8601": "2025-07-19T18:23:13.282220Z",
            "url": "https://files.pythonhosted.org/packages/42/df/687ec508c02499bd478d3b512c9f9b8c5665efd3eaa64d1131a9e44a807f/kite_order-0.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b4ae3586e8437f9b34938753f93a6e6511fb3fe103545917124f757a96c5e956",
                "md5": "4501d9da16faa8df48f9d7197120658f",
                "sha256": "274ab69b3d876a9cb9a135f5639013c5f4ed698a80098d3e0950a718d0bcb0c9"
            },
            "downloads": -1,
            "filename": "kite_order-0.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "4501d9da16faa8df48f9d7197120658f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 13395,
            "upload_time": "2025-07-19T18:23:15",
            "upload_time_iso_8601": "2025-07-19T18:23:15.699182Z",
            "url": "https://files.pythonhosted.org/packages/b4/ae/3586e8437f9b34938753f93a6e6511fb3fe103545917124f757a96c5e956/kite_order-0.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-19 18:23:15",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "kite-order"
}
        
Elapsed time: 0.64081s