量化交易4:python程序帮你自动下单

liftword4个月前 (02-11)技术文章57

量化交易的最终需要电脑自动下单,但因为安全性问题,券商通常不会提供交易接口。

怎么办?python的pyautogui库来解决!

原理很简单,先看懂sell_stock()卖出股票函数 buy_stock()买入股票函数。

涉及到pyautogui的三个基本功能:

1,准备工作: 导入库 和 设定时间变量 和 开启临时退出机制

2,键盘操作:字符输入 typewrite() 和 功能按键 press()

3,鼠标操作:移动鼠标 moveto() 和 点击鼠标 click()

import pyautogui as auto
auto.PAUSE = 1.0
durtime=0.001
auto.FAILSAFE = True  #鼠标到屏幕左上角可以随时退出程序!!!

def sell_stock(stockcode, sellingprice, sellingqty):
    time.sleep(5)
    # left click "Sell"
    auto.moveTo(275, 50, duration=durtime)
    auto.click(button='left')
    # auto.typewrite(['000835', '4.60', 'tab', '2000', 'tab', 'space'], 1)
    auto.typewrite(stockcode, durtime)
    auto.typewrite(sellingprice, durtime)
    auto.press('tab')
    auto.typewrite(sellingqty, durtime)
    auto.press('tab')
    auto.press('space')
    auto.press('enter')
    time.sleep(2)
    auto.press('enter')
    # left click "trade already"
    auto.moveTo(350, 50, duration=durtime)
    auto.click(button='left')
def buy_stock(stockcode, buyprice, buyqty):
    time.sleep(5)
    # left click "Sell"
    auto.moveTo(235, 50, duration=durtime)
    auto.click(button='left')
    # auto.typewrite(['000835', '4.60', 'tab', '2000', 'tab', 'space'], 1)
    auto.typewrite(stockcode, durtime)
    auto.typewrite(buyprice, durtime)
    auto.press('tab')
    auto.typewrite(buyqty, durtime)
    #auto.press('enter')
    auto.press('enter')
    auto.press('enter')
    time.sleep(2)
    auto.press('enter')
    # left click "trade already"
    auto.moveTo(350, 50, duration=durtime)
    auto.click(button='left')

移动鼠标有两种方法:

(1)绝对移动,按你给定的坐标移动,技巧是屏幕截图然后在win自带的“画笔”中查看你要点击位置的绝对坐标。

(2)相对移动更聪明,能在屏幕上搜索特定形状的“图片”,代码如下:

pwr_location = auto.locateOnScreen('pwr.png', grayscale=False)
movemouse_and_click(pwr_location.left-10, pwr_location.top+10, duration=durtime)#点击三个数据选项

其中"pwr.png"就是提前截图并存放在程序运行目录下的图片。

使用pyautogui,也可以用电脑自动做很多繁琐的重复工作,如:导入导出大智慧的自定义数据,收盘后自动下载数据,自动做条件选股......

任何量化交易程序,都是为特定的“操作策略”服务的;

没有成熟完善的“操作策略”,痴迷量化交易就是给自己挖坑,希望你能听得懂。

ps: 以上解决方案,如果帮到你,收藏加“关注”

相关文章

Python量化交易:策略创建运行流程

学习目标目标知道策略的创建和运行知道策略的相关设置知道RQ的策略运行流程应用无1、体验创建策略、运行策略流程1.1 创建策略1.2 策略界面2、 策略界面功能、运行介绍2.1 一个完整的策略需要做的事...

5分钟教会你:如何用python写一个量化交易程序

在量化交易领域,Python凭借其丰富的库和简洁的语法成为众多开发者的首选语言。下面这篇文章将为你详细介绍如何用Python编写一个简单的交易量化程序,适合有一定编程基础且对量化交易感兴趣的读者。用P...

【量化干货】用python搭建量化交易策略

技术已成为金融行业中的战略资产。而传统的金融机构现在正在转型成为科技公司,而不仅仅是专注于该领域的金融方面。数学算法带来了创新和速度,它们可以帮助我们在市场上获得竞争优势。金融交易的速度和频率以及庞大...

python量化交易:各种指标的绘图、计算及交易策略

《量化投资:以python为工具》第五部分笔记先来画k线图,要注意finance模块已经从matplotlib库中去除,现在要用mpl_finance库,单独安装。其中有candlestick_ohl...

用Python编写量化交易策略的完整指南

首先,推荐您学习一些Python金融计算库,例如NumPy、Pandas、Matplotlib和Scikit-Learn等。接下来,您可以学习有关量化投资的知识,例如技术分析、基本面分析、市场心理学和...

Python量化投资实践:基于蒙特卡洛模拟的投资组合风险建模与分析

蒙特卡洛模拟是一种基于重复随机抽样获取数值结果的计算算法。该方法的核心原理在于利用随机性解决本质上可能具有确定性的问题。其命名源自摩纳哥的蒙特卡洛赌场,这体现了该方法中固有的随机性特征。在金融与交易等...