Skip to main content

trading api

Project description

Welcome to the evolving !

This is a repo for the evolving trading engine under the Mac OSX system.

Author

evolving ©Lorenzo, Released under the GPL-3.0 License.

Get in touch!

In order to get in touch with the author, join Gitter

Gitter

How to contribute

To contribute in this repo, please open a pull request from your fork of this repo.

Repo structure

tree evolving
    evolving
    ├── LICENSE
    ├── README.md
       ├── ascmds.py
       ├── evolving.py
       └── helper.py
    ├── requirements.txt
    ├── setup.py
    └── tests
        ├── __init__.py
        ├── evolving.py
        └── helper.py

tree ~/.config/evolving
    ~/.config/evolving
    └── config.xml

Installation guide

  1. Requirements

    • python >= 3.8.5
  2. Dependencies

    brew install cliclick
    cliclick -V             # cliclick 4.0.1, 2018-04-10
    which cliclick          # /usr/local/bin/cliclick
    
    pip install `curl -fsSL https://raw.githubusercontent.com/zetatez/evolving/main/requirements.txt`
    
  3. Installation

    • Building evolving from pip

      pip install evolving
      
    • Building evolving from source

      git clone git@github.com:zetatez/evolving.git ~/evolving; cd ~/evolving; python setup.py install; rm -rf ~/evolving
      
  4. Configuration

    mkdir -p ~/.config/evolving
    
    # Note: 
    # 1. You need to log in broker and bank account manually at least once.
    # 2. If you want to use the email notification module, you need to register a 163 email account.
    echo """
    <evolving>
        <trading>
            <userid>77777777777</userid>
            <password>123456</password>
            <broker_code>PAZQ</broker_code>
            <broker_account>66666666</broker_account>
            <broker_password>123456</broker_password>
            <bank_name>工商银行</bank_name>
            <bank_account>666666666666666666</bank_account>
            <bank_password>123456</bank_password>
        </trading>
        <mail>
            <mail_host>smtp.163.com</mail_host>
            <mail_sender>mailAddress@163.com</mail_sender>
            <mail_license>SNRRQOKFKEUNNSFT</mail_license>
            <mail_receivers>mailAddress@163.com</mail_receivers>
        </mail>
    </evolving>
    """ > ~/.config/evolving/config.xml
    
    • Example of the config file ~/.config/evolving/config.xml:
    <evolving>
            <trading>
                    <!-- 同花顺账号 -->
                    <userid>77777777777</userid>
                    <!-- 同花顺账户密码 -->
                    <password>123456</password>
                    <!-- 券商代码: 拼音首字母组合, ex. PAZQ 指 “平安证券” -->
                    <broker_code>PAZQ</broker_code>
                    <!-- 券商账户 -->
                    <broker_account>66666666</broker_account>
                    <!-- 券商账户密码 -->
                    <broker_password>123456</broker_password>
                    <!-- 银行名称:中文即可,用不到 -->
                    <bank_name>工商银行</bank_name>
                    <!-- 银行账户 -->
                    <bank_account>666666666666666666</bank_account>
                    <!-- 银行账户密码 -->
                    <bank_password>112173</bank_password>
            </trading>
            <mail>
                    <!-- mail host -->
                    <mail_host>smtp.163.com</mail_host>
                    <!-- mail sender -->
                    <mail_sender>evolving@163.com</mail_sender>
                    <!-- mail license -->
                    <mail_license>SNRRQHKXDFEUNNSFT</mail_license>
                    <!-- mail receivers: multiple can be specified, separated by ';' -->
                    <!-- It is highly recommended to specify only one recevier, and same with mail_sender -->
                    <mail_receivers>evolving@163.com</mail_receivers>
            </mail>
    </evolving>
    
  5. Authorization

    • Mac -> Systerm Preference -> Security & Privacy -> Privacy -> unluck -> Accessibility
      • Terminal
      • your IDE, ex. sublime, vscode, etc.
      • osascript
    • Mac -> Systerm Preference -> Security & Privacy -> Privacy -> unluck -> Full Disk Access
      • Terminal
      • your IDE, ex. sublime, vscode, etc.
      • osascript

For more information

  • Hints:

    • You need to log in broker and bank account manually at least once.

    • If you want to use the email notification module, you need to register a 163 email account.

    • Technically, there is no restriction on brokers, but I didn't develop it all. If you don't find the broker you want, please contact me at zetatez@icloud.com. Or you can make a little change to the asloginBroker of the script ascmd.py file and python setup.py install again.

      Up to now, The supported brokers are

      • <broker_code>ZXZQ</broker_code> -- 中信证券
      • <broker_code>PAZQ</broker_code> -- 平安证券
      • <broker_code>ZSZQ</broker_code> -- 浙商证券
      • <broker_code>GTJA</broker_code> -- 国泰君安
      • <broker_code>GJZQ</broker_code> -- 国金证券
      • <broker_code>XYZQ</broker_code> -- 兴业证券
      • <broker_code>ZJZQ</broker_code> -- 中金证券
      • <broker_code>ZTZQ</broker_code> -- 中泰证券
  • A brief tutorial can be found at wiki.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

evolving-1.1.2.tar.gz (30.0 kB view hashes)

Uploaded Source

Built Distribution

evolving-1.1.2-py3-none-any.whl (40.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page