{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Example For\n", "### Place Order Intraday Odd" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Response Code: 0 | Event Code: 0 | Info: host '218.32.76.102:80', IP 218.32.76.102:80 (host 1 of 1) (host connection attempt 1 of 1) (total connection attempt 1 of 1) | Event: Session up\n" ] } ], "source": [ "import shioaji as sj\n", "\n", "api = sj.Shioaji()\n", "accounts = api.login(\"YOUR_PERSON_ID\", \"YOUR_PASSWORD\", contracts_timeout=10000)\n", "api.activate_ca(\n", " ca_path=\"/c/your/ca/path/Sinopac.pfx\",\n", " ca_passwd=\"YOUR_CA_PASSWORD\",\n", " person_id=\"Person of this Ca\",\n", ")\n", "\n", "contract = api.Contracts.Stocks.TSE.TSE0050\n", "order = api.Order(\n", " price=90,\n", " quantity=10,\n", " action=\"Buy\",\n", " price_type=\"LMT\",\n", " order_type=\"ROD\",\n", " order_lot=\"IntradayOdd\", \n", " account=api.stock_account\n", " )\n", "trade = api.place_order(contract, order)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Trade(contract=Stock(exchange=, code='0050', symbol='TSE0050', name='元大台灣50', category='00', limit_up=114.85, limit_down=94.05, reference=104.45, update_date='2020/09/22', margin_trading_balance=15390, short_selling_balance=2, day_trade=), order=Order(action=, price=90, quantity=10, id='bc156fac', seqno='482348', ordno='00000', account=Account(account_type=, person_id='PAPIUSER04', broker_id='9A95', account_id='0506112', signed=True), price_type=, order_type=, order_lot=), status=OrderStatus(id='bc156fac', status=, status_code='0', order_datetime=datetime.datetime(2020, 9, 22, 9, 10, 12), deals=[]))" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trade" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Cancel Order" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "api.update_status(api.stock_account)\n", "api.cancel_order(trade)\n", "api.update_status(api.stock_account)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Trade(contract=Stock(exchange=, code='0050', symbol='TSE0050', name='元大台灣50', category='00', limit_up=114.85, limit_down=94.05, reference=104.45, update_date='2020/09/22', margin_trading_balance=15390, short_selling_balance=2, day_trade=), order=Order(action=, price=90.0, quantity=10, id='a0696a8b', seqno='482344', ordno=' ', account=Account(account_type=, person_id='PAPIUSER04', broker_id='9A95', account_id='0506112', signed=True), price_type=, order_type=, order_lot=), status=OrderStatus(id='a0696a8b', status=, status_code='X', order_datetime=datetime.datetime(2020, 9, 22, 8, 48, 28), cancel_quantity=10, deals=[]))" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trade" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Update Order" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "api.update_status(api.stock_account)\n", "api.update_order(trade=trade, qty=2)\n", "api.update_status(api.stock_account)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Trade(contract=Stock(exchange=, code='0050', symbol='TSE0050', name='元大台灣50', category='00', limit_up=114.85, limit_down=94.05, reference=104.45, update_date='2020/09/22', margin_trading_balance=15390, short_selling_balance=2, day_trade=), order=Order(action=, price=90.0, quantity=10, id='a7ac2c0d', seqno='482345', ordno=' ', account=Account(account_type=, person_id='PAPIUSER04', broker_id='9A95', account_id='0506112', signed=True), price_type=, order_type=, order_lot=), status=OrderStatus(id='a7ac2c0d', status=, status_code='R', order_datetime=datetime.datetime(2020, 9, 22, 8, 54, 32), cancel_quantity=2, deals=[]))" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trade" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "file_extension": ".py", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.0" }, "mimetype": "text/x-python", "name": "python", "npconvert_exporter": "python", "pygments_lexer": "ipython3", "version": 3 }, "nbformat": 4, "nbformat_minor": 4 }