关于赛德塔斯系统

返回主页

设计与思路

该系统由个人自主开发,开发之初的目的主要有两个,一个是替代人工进行证券分析,另一个则是提供部分证券关键数据、指标的及时监控预警。这两个目标为了实现,第一步设计就需要构建一个庞大的数据搜集网络,因此系统的第一步开发工作完全集中在数据库搭建和爬虫网络的开发之中,这一步花了3年时间才完成,系统所依赖的几乎全部数据都来源于爬虫获取,因此从开发之初,系统就面临着后续研发的最大障碍:分析时滞。

为了解决改善时滞问题,后续为爬虫网络引入了代理机制,以在被识别为爬虫时可以迅速切换代理继续爬取数据。同时,很多及时分析需要被放弃,这种时滞问题也贯穿后续数据分析和计算的全部过程,由于无法消除,就需要考虑大幅降低这种影响,因此系统尽可能不做不在监控进行中全量分析,并大量使用过滤分析机制。接下来,为了提高数据获取效率,又启用了多服务器协同爬取数据,并加入了自动负载优化机制,以在尽可能短的时间内获取尽可能多的数据。

改善时滞问题滞后,爬虫网络搭建逐步完善,在全部数据获取模块构建完成后,数据库体量大幅扩张,为了防止庞大数据库丢失,接下来被迫进行频繁数据库备份。在解决数据问题之后,系统开发正式开始,初期系统开发完全集中在对获取数据的监控、展示和图形化过程中,分析还是由人工完成。

这一开发思路延续了大概1年左右,由于每日需要分析的数据体量越来越庞大,以及人工分析误差、主观感受干扰等等因素存在,人工分析即使存在图形化数据、图表化数据,也变得越来越困难。因此,研发方向被迫转向自动化分析,利用已有算法和一些自主开发算法,个人将多年分析经验和正规分析思路,叠加自研分析算法,引入系统,并进行第一次底层重构,在数据获取、展示基础上,又搭建了一次自动分析模组,该模组由大量分析模块构成,并通过引入系统循环执行器中,得以自动不间断运行分析,这也是第一次输出内容从监控转向分析结果输出。

从分析结果输出思路开始,对研究、分析算法的开发变成了研发的主要方向,在2年的时间里,自主完成了包括市场、板块、个股、消息、财务等数据方向自动分析模块搭建,但此时逐步发现新问题产生,由于模块过于分散,模块与模块之间互相独立,各分析所在领域,联系组件缺失和盘中监控分析体系未有搭建,因此开发主要方向转为连接各模块并搭建完善盘中分析体系,而将盘后分析框架作为辅助和核心算法来源。完成该部分开发后,主要思路又开始转向交易方向,设计开发思路开始向着为交易全过程提供全方位保障,直到目前,开发依然主要集中在该方向,预计下一步将进一步完善交易自动化,其中也将涵盖分析、研究的全面自动化改进。

自适应原则

系统自适应性

系统持续开发过程,已经独立产生了一个包含数据搜集、数据分析、数据预测、结果输出展示在内的完整体系,无论如何拓展,系统始终包含两大核心开发原则,一个就是自适应性。

市场是变化的市场,系统如果光涵盖个人分析思路、方法,总有一天会因为市场的变化而逐渐失效,因此搭建系统的其中一个核心原则,就是要求系统能够自动适应市场变化,该自适应机制其实归根结底就是一种自反馈机制,要求系统可以通过分析预测结果与实际结果之间的差异,自动为下一次分析预测加入纠偏机制,这一过程目前是通过设计的算法实现的,且可以随着分析预测的次数变多,不断从错误中吸取经验,从提供的分析预测方法开始,不断演进。当然,这种纠偏模式很有可能是不足的、不充分的,目前个人仍在研究新的纠偏方法,并希望通过体系化、模块化纠偏算法的研究,以模块形式自由植入所有分析模组,以实现通用纠偏效果,而不是对不同模组各独立开发纠偏功能。

防御优先原则

自保优先原则

系统所内涵的另一个核心原则就是自保优先原则,个人认为不在或者少在市场中产生亏损,是逐步盈利,到产生巨大盈利的底层原则,本金不受损就要求从两方面进行系统开发引导。第一种就是要求提高判断准确性,第二种就是要求改进更先进的应对处置体系。

预判精度的提高,可以说是系统开发第一个终极目标,而从系统层面讲,这种高预判精度所含内容非常复杂,这就包含了对市场所处阶段的精确判断,对市场风险的精确衡量,对市场中主线发展方向的精确预判,对当前适应市场的操作策略方法进行精确定位选择,对当前适应市场的选股策略进行精确定位选择,以及最后对具体个股的精确定位以实现最大胜率等等。这里就需要拓展出几十种不同分析预测模块,也构成了目前系统的主体分析框架,尽可能准确地解答了几个核心问题:现在适不适合进行买卖交易?适合的话,我应该投入多少仓位比较合适?市场主线在哪里?主线是否值得跟踪?我应该采取何种交易策略?我应该采取何种选股策略或者说选择什么风格个股最不容易亏损?具体我应该选择哪个个股进行操作?操作后面对不同结果如何应对?

这里的核心思路在于对可能性或者说路径概率的预测,由于预判并不是一门精确科学,而应该是一种模糊的概率度量,因此使用特定算法计算出预测或者说分析结果方向产生的概率,是预判最为重要的过程,而开发一直在试图解决这个问题。有了这些数据支持,也为自保提供了最基础的数据保证。

因此,完成自保的第一步就是让系统提示避开最不容易获胜的阶段,选择最好、最容易获利的阶段去操作,操作最容易获利的目标进行买卖;但有这一保障还不够,还需要完成的第二步就是应对策略。

个人主要开发了四种不同策略,虽然部分有变种以适应不同市场需求,但通过植入这四种策略进入市场,由于不同阶段不同策略胜率各有差异,因此适当的时候采取适当的交易策略就有助于依据当前风险程度尽可能限制损失的产生。而归根结底,对于策略的设计其中只包含了六个核心部分:即选什么风格的个股、买入后设定多少幅度止盈、买入后设定多少幅度止损、买入后最大持仓周期有多长、到底动用多少仓位,以及买卖点置于一个交易日中的哪个阶段?简化到这一步,交易策略设计其实就是针对以上六个部分进行调参的过程,四种基本策略的植入,是个人多年经验总结的结果,但由于系统的一项核心思路就是从结果推过程,因此让系统自动调整以上六种参数是完全可行的,而有其他分析模组的辅助,就可以让系统区分市场阶段、状态,自动开发出具备自适应特性的策略,从而实现最大程度上的自保。

自保原则也被置于各模块中,特别是选股模块中,功能自主剔除高风险标的,也完全遵循自保优先的核心原则进行,尽管目前高风险标的参数定义完全由人工设置,但由于标的是存在未来表现的,未来思路中完全可以根据标的未来表现优异来归纳高风险标的的参数定义结果,这也是未来全自动分析框架设计的一个主要思路。