触价单

触价单的设定是,先决定「触发价」,这是交易人要动作(停损)的价格,再设定「取价」,这是指当市场价格触及或穿过触发价,转成正式委托下到市场时,是要用「限价」、「范围市价」或是「市价」,三者择其一来挂出委托。


from pydantic import BaseModel

class TouchOrderCond(BaseModel):
    contract: Contract
    order: Order
    touch_price: float

class TouchOrder:
   def __init__(self, api: sj.Shioaji, condition: TouchOrderCond
    ):
       self.flag = False
       self.api = api
       self.order = condition.order
       self.contract = condition.contract
       self.touch_price = condition.touch_price
       self.api.quote.subscribe(self.contract)
       self.api.quote.set_quote_callback(self.touch)

   def touch(self, topic, quote):
       price = quote["Close"][0]
       if price == self.touch_price and not self.flag:
           self.flag = True
           self.api.place_order(self.contract, self.order)
           self.api.quote.unsubscribe(self.contract)


<<:  [Day 18]所以我说那个酱汁呢(前端篇)

>>:  Day 18:数据蒐集、资料视觉化、数据分析

冒险村04 - Create PR with default template

04 - Create PR with default template 在 Github 多人开发...

什麽是Vaadin - day01

Vaadin 简介 Vaadin 是一款由芬兰 Vaadin 公司所开发,用於建构网路应用程序和网站...

爬虫怎麽爬 从零开始的爬虫自学 DAY12 python列表进阶篇

前言 各位早安,书接上回我们练习了一些基础list用法跟一些技巧,今天我们要来深入探讨list更多能...

[Day 18] -『 GO语言学习笔记』- 核心型别(IV)

以下笔记摘录自『 The Go Workshop 』。 接续上一篇的学习笔记。 其实可以直接使用fo...

DAY04 - 套件?手刻?都挤~?

在前端打滚一段时间 主要都是在用element UI这个UI套件在制作网站後台 因此对套件的依赖非常...