コード例 #1
0
    def test_limit_requires_price(self):
        order = EquityOrderBuilder('AAPL', 10) \
            .set_instruction(EquityOrderBuilder.Instruction.BUY) \
            .set_order_type(EquityOrderBuilder.OrderType.LIMIT) \
            .set_duration(Duration.DAY) \
            .set_session(Session.NORMAL)

        with self.assertRaises(InvalidOrderException, msg='price must be set'):
            order.build()

        order.set_price(100)
        order.build()
コード例 #2
0
parentdir = os.path.dirname(currentdir)
sys.path.append(parentdir)
import config  # stored in parent directory for security

token_path = 'token'
redirect_uri = "https://localhost"

DRIVER_PATH = "/home/hopper/chromedriver"
driver = webdriver.Chrome(DRIVER_PATH)

try:
    c = auth.client_from_token_file(token_path, config.api_key)
except FileNotFoundError:
    c = auth.client_from_login_flow(driver, config.api_key, redirect_uri,
                                    token_path)
time.sleep(2)

# print(c.place_order(config.tda_acct_num, equity_buy_market('SNDL', 1).set_duration(Duration.GOOD_TILL_CANCEL).set_session(Session.SEAMLESS).build()))

builder = EquityOrderBuilder('SNDL', 1)
builder.set_instruction(EquityOrderBuilder.instruction.BUY)
builder.set_order_type(EquityOrderBuilder.OrderType.MARKET)
builder.set_duration(duration.DAY)
builder.set_session(Session.NORMAL)

response = c.place_order(config.tda_acct_num, builder.build())

print(response)

time.sleep(2)
driver.quit()
コード例 #3
0
from tda import auth, client
from tda.orders import EquityOrderBuilder, Duration, Session
import json
import config
import datetime

# limit order of 5 shares of netflix stock at 18 dollars a share
builder = EquityOrderBuilder('NFLX', 5)
builder.set_instruction(EquityOrderBuilder.Instruction.BUY)
builder.set_order_type(EquityOrderBuilder.OrderType.LIMIT)
builder.set_price(18)
builder.set_duration(Duration.GOOD_TILL_CANCEL)
builder.set_session(Session.NORMAL)

response = c.place_order(config.account_id, builder.build())