通达信量化接口需要被程序化执行吗?
创始人
2024-04-30 16:04:56
0

其实通达信量化接口其实是量化交易模型的需要被执行的一种方式,但如果你交易者的策略模型采用比较中低频的交易执行方式,比如每天只交易一次,甚至每周或每月才轮动一次。那么小编认为通达信量化接口建议是否程序化执行也是一个非常重要的指标。就比如说,在股票量化交易期间执行自动止损策略,例如执行程序如下:

(1)# 设置买卖止损值
    def set_stop_lose_num(self, i) -> int:
        df = self.df
        return df['阻力线'][i] - df['中界线'][i]
 
   (2) # 买卖框架主函数,[{'buy_date': buy_date,'buy_price':buy_price,'sell_date':sell_date,'sell_price':sell_price},{}...]
    def stock_strategy_main(self) -> list:
        df = self.df
 
        last_buy_in_date = None
        last_buy_in_price = 0
        last_sell_out_date = None
        last_sell_out_price = 0
        buy_sell_dict = {}
        buy_sell_list = []
        for i in df.index[20:]:
            if self.flag_buy_in:  # 有没有条件买入做空,默认为没有买入条件False
                if self.strategy_buy_in(i):  # 最高价大于BOLL上端线了,买买买,空空空,不要怂,就是干;
                    last_buy_in_date = i  # 买入日期记录一下
                    last_buy_in_price = df['Close'][i]  # 买入价格记录一下,后边好算盈亏
                    self.stop_lose_num = self.set_stop_lose_num(i)  # 设好止损,以防踩坑上不来
                    self.flag_buy_in = False  # 买入后,停止买入判断,以防买太多,死的惨
                    self.need_sell_out = True  # 开启卖出状态
 
                    (3)继续输入日期continue
            if self.need_sell_out:  # 是否需要卖出,买入了就需要卖出
                # 能不能正常卖出,能的话,就准备继续买入,扩大战果
                if self.strategy_stop_win(i):  # 是否需要获利了结
                    last_sell_out_date = i  # 记录卖出日期
                    last_sell_out_price = df['Close'][i]  # 记录卖出价格
 
                    buy_sell_dict = {
                        'buy_date': last_buy_in_date,
                        'buy_price': last_buy_in_price,
                        'sell_date': last_sell_out_date,
                        'sell_price': last_sell_out_price
                    }
                    buy_sell_list.append(buy_sell_dict)
                    buy_sell_dict = {}
                    self.need_sell_out = False  # 卖光啦,不需要再卖出啦
                    self.flag_buy_in = True  # 空仓啦,可以准备再买点,发财,发财
                    continue
                # 需要止损了,忍痛割爱,冷静一下,暂时不具备买入条件
                elif self.strategy_stop_lose(i, last_buy_in_price):
                    last_sell_out_date = i  # 记录卖出日期
                    last_sell_out_price = df['Close'][i]  # 记录卖出价格
                    buy_sell_dict = {
                        'buy_date': last_buy_in_date,
                        'buy_price': last_buy_in_price,
                        'sell_date': last_sell_out_date,
                        'sell_price': last_sell_out_price
                    }
                    buy_sell_list.append(buy_sell_dict)
                    buy_sell_dict = {}
                    self.need_sell_out = False  # 卖了,不需要再卖出啦
                    continue
            # 没有需要卖出的商品,那就看看能不能准备买入,做点小买卖
            if self.need_sell_out is False:
                if self.strategy_open(i):  # 空头还可以嘛,再上去我就做空
                    self.flag_buy_in = True  # 开启买入做空模式
                    continue
        return buy_sell_list

执行示例:

 所以说,在通达信量化接口交易过程中,需要执行程序化策略去做好量化交易,就好比如说有很多额外的高山是需要你去翻越的,变量越多事情会变得越复杂,其实就是本着实用主义出发来执行你的量化交易模型,更快的安全便捷去实现自动化交易过程。

话说回来,如果交易者能清楚地找到自己的模型交易环节定位模型的交易生产方式,也是很香的,包括这两种方式:

1. 包办一切的方式,但要全部自己动手,比如流程如下:

– 安装好相应的编程环境,或者安装好相应的软件;

– 下载所需要的各种数据

– 制定一个简单的量化策略

– 写代码做实验

– 然后开盘测试

2.简单体验和租用平台的方式,也可以在通达信量化接口平台上写代码就能自动执行量化策略,精准进行选股和止损止盈等。

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...