程序化交易入门
《程序化交易》课件

程序化交易 PPT 课件 欢迎参加《程序化交易》PPT课件。本课程将深入介绍程序化交易的概念、 技术、策略和实施等方面内容,帮助您了解和掌握这一领域的知识。
介绍程序化交易
程序化交易是指利用计算机算法进行交易的方式。本节将介绍程序化交易的定义、历史、优势和挑战。
开始程序化交易
总结
探讨程序化交易的优缺点,需要注意的问题,以及提高程序化交易效率和成功率的方法。
了解程序化交易需要的技术和知识,选择适合的交易平台以及收集和分析数 据的方法。
程序化交易的策略
介绍常见的程序化交易策略,以及如何制定有效的策略、测试和优化策略。
程序化交易的实施
讲解如何执行程序化交易,如何控制风险,并评估和监控交易结果。
程序化交易的未来
分析程序化交易的发展趋势、对金融市场的影响,并展望其未来发展。
程序化交易系列研究一(国泰君安证券-金融工程)

文华财经程序化交易教程

1.自编公式支持的操作符2.编辑平台的语法1.关于公式名称:公式的名称不可以和已经存在的公式重复。
2.关于参数:每个自编公式最多可以定义六个参数,参数的定义如下,首先是参数名称,然后是参数的最小值,最大值,最后是参数的默认值。
在定义参数时要注意的是参数名称不可以重复。
3.关于变量名称:变量名称不可以互相重复,不可以和参数名重复,不可以和函数名称重复。
4.关于公式内容:公式的每个语句应该以分号结束,包括最后一条语句。
在数据公式的时候请您注意一定要使用半角输入。
在编写公式的过程中,如果您不记得某个函数的确切写法,可以选择插入函数来插入函数。
5.如果您在编写公式之后,想给这个公式加上注释、说明,可以点击公式名称后面的“公式说明”,在弹出窗口中输入。
6.IFELSE(C,A,B)如果条件C成立则返回A值,否则返回B值例:IFELSE(CLOSE>REF(CLOSE,1),1,0);表示若今日收盘价高于前一日收盘价,则返回1,否则返回03. 自编公式支持的函数1.引用数据2.金融统计3.数理统计4.逻辑判断5.数学运算6.时间函数7.绘图8、颜色常数9、头寸函数10、信号记录函数11、画线函数12、未来函数4. 交易模型中的交易指令期货交易指令股票、权证、外汇交易指令套利模型中的交易指令外盘指令5. 编程举例■举例:1. MACD公式MACD公式有三个参数:SHORT(短期)、LONG(长期)、M 天数,一般为12、26、10 MACD公式的用法:①DIFF、DEA均为正,DIFF向上突破DEA,买入信号。
②DIFF、DEA均为负,DIFF向下跌破DEA,卖出信号。
③DEA线与K线发生背离,行情反转信号。
④分析MACD柱状线,由红变绿(正变负),卖出信号;由绿变红,买入信号。
其中:⑴DIFF线收盘价短期、长期指数平滑移动平均线间的差⑵DEA线 DIFF线的M日指数平滑移动平均线⑶MACD线DIFF线与DEA线的差,彩色柱状线按照上述原理,MACD公式应该写成如下形式:参数表:参数名最小值最大值默认值SHORT 5 40 12LONG 20 100 26M 2 60 10公式写成如下形式即可:DIFF:=EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);DEA:=MA(DIFF,M);MACD:2*(DIFF-DEA);公式的第一行对应于⑴,公式的第二行对应于⑵,公式的第三行对应于⑶。
期货程序化交易

1.什么是程序化交易?程序化交易是交易员根据自己的交易思想,借助市场技术指标,将进场条件和离场条件定量化,形成交易模型。
再将交易模型编写成计算机程序,当价格的变化满足预设条件时,由计算机自动激发买入或卖出信号。
2.程序化交易相对于一般交易有哪些特点,其主要解决哪些问题?凡是交易决策和交易执行过程中的一切环节是程序化的,机械的就是程序化交易。
一般来说,程序化交易是指利用计算机语言将人的交易策略和思想编辑成交易模型,当交易模型中设定的买卖条件被满足后,由计算机程序自动发送下单指令完成交易。
程序化交易并不是和计算机必然联系的,它指的是一种交易的决策和执行方式,与它相对应的是主观交易。
即使交易决策是基本面分析,交易执行是人工手动下单,但整个流程都是程序化的,那么也属于程序化交易或系统化交易。
具体的程序化交易如何进行,取决于投资者自身交易策略的需要。
程序化交易的特点和优势:首先是“死的”不是“活的”。
这种客观的,机械的交易决策和执行方式排除了人在交易中的非理性的感情因素,解决了交易中的纪律性问题。
这也是程序化交易取得成功的关键。
其次是可以做到“心中有底”,而不是交易中人们时常感觉的“没底”。
程序化交易的策略具有可验证性,由于交易策略是定量的,因此每一种策略在使用前都可以运用科学方法对其进行历史或实盘的效果测试,做到在正式投入使用前定量地掌握该交易策略的收益、风险对应的概率。
不理想的话就重新设计直到认同。
每一个市场参与者都有自己的交易策略,和自己的交易纪律性。
让交易策略或计划更科学,更符合客观实际;让充分准备的计划被严格的执行,就是程序化交易主要解决的问题。
3.假设一种程序化交易方式被众多投资者竞相使用,会不会带来程序失效?作为程序化交易的设计者,应如何避免这一类问题?这要看具体的交易策略。
按交易策略可以分为高频交易,趋势性交易,统计套利交易等若干种,他们都采用的是程序化交易的方式。
其中一些持仓时间周期短的策略如短期套利交易会出现用的人越多越不利的问题。
期货程序化自动交易教程

期货程序化自动交易教程自动化交易教程历经16年金融风雨,经历了全球市场所有商品的真实磨练准确、迅速、无所不能是投资家的目标自动化交易教程 ..................................................................... ............ 错误~未定义书签。
1. 把交易思路告诉计算机 --- 交易公式的创造 ......................... 错误~未定义书签。
2. 让公式跑起来 --- 组装交易策略........................................... 错误~未定义书签。
3. 多种入仓方式 --- 灵活使用先进的武器 ................................ 错误~未定义书签。
入仓...................................................................... ............... 错误~未定义书签。
出仓...................................................................... ............... 错误~未定义书签。
4. 各取所需 --- 价位驱动和时间驱动 ....................................... 错误~未定义书签。
5. 不可或缺的所见所得的创作手段 --- 仿真测试...................... 错误~未定义书签。
6. 图形化交易 --- 手工和自动的完美结合,让机器完成团队的工作错误~未定义书签。
7. 附录一博雅语言教材 .......................................................... 错误~未定义书签。
程序化交易的经验之谈

程序化交易的经验之谈做期货,我一开始就选择了自动化,因为主要是有实验,觉得做期货风险很大,最后就选择做自动化。
从09年年底开始接触,股指期货一上市就开始做,一直做到现在,这是一个保存数据最长的一个账户的曲线。
将近三年多的时间里,曲线是走出来了。
我觉得我这条曲线走出来真的经历了很多,不像有些人,开始就有很多经验,我是一步步摸出来的。
第一个阶段,一开始我是简单学了五天的程序化交易,之后拿了一套很简单的策略回去。
我胆子比较大,股指期货一上来我就开始做,那时的思路就是单策略、单品种、重仓交易。
当时我用一个非常简单的突破策略,就这样搞起来了,搞到这个阶段的时候发现一周时间,资金回撤了13.8%,给我带来了深思,就觉得好像不行。
第二阶段,我就开始做一些变化,开始改变,多策略单品种,还采用了一个盈利加码。
因为当初这里我只用了二十万资金,进去试水,到了这个位置我又加了二十万,到了这个位置资金开始有一百多万在做。
但是如果一百多万还是按前面做,我回撤会非常大,我就想到用不同的策略来做。
策略里面分第一次进场,第二次进场,但我的原则就是盈利加码,然后顺势交易。
但我最关注的就是盈利和回撤的关系,不是说我赚了多少钱,而是关注我最大回撤是多少。
第三个阶段我又做了改变,就是多策略多品种和盈利加仓。
还有一个就是策略分类互补,顺势交易。
这个位置我就开始做商品,大概全市场挑了十个商品,就用一套简单的策略。
一套简单的策略在一个商品上的曲线很难看,没想到放到十个商品里面组合,发现组合曲线还过得去,就这样上了。
后来做一个策略分类互补,就是我把这个策略分成一个进攻型,中性和防守型。
当我进攻型进去之后,我可能防守型就没在场,当我三个在场的时候,一定出大行情,那我回撤就控制住了。
第四个阶段,我又开始做一个调整,多策略多品种,盈利加码改良,对市场的理解不一样后,加仓的手法开始做一些改变,还有一个就是盈利减仓,加仓和减仓都加进去了,还有就是对市场冲击的完善。
程序化初级交易模型总结

阶段涨幅:(CLOSE-REF(CLOSE,N)/REF(CLOSE,N);再创新高:HIGH=HHV(HIGH,N);放量上攻:CLOSE/REF(CLOSE,5)>1.2 &&VOL>MA(VOL,5)*3;窄幅整理:(HHV(CLOSE,20)-LLV(CLOSE,20))/CLOSE,0.08;均线多头排列:MA(CLOSE,5)>MA(CLOSE,10) && MA(CLOSE,10)>MA(CLOSE,20);前期高点及其位置:HHV(HIGH,20) HHVBARS(HIGH,20);60天前到40天前的最高价格: REF(HHV(HIGH,20),40)动态平均EMA(X,N) SMA(X,N,M) SMA(CLOSE,VOL)点到面转化COUNT SUM HHV LLV面到点转化CROSS线性回归SLOPE(CLOSE,10)/REF(CLOSE,10)>0.05;之字转向PEAK TROUGH PEAKBARS TROUGHBARS大阳线LOW=OPEN &&CLOSE=HIGH&&CLOSE/OPEN>1.04;穿头破脚C/O>1.04 &&OPEN<REF(CLOSE,1)&&CLOSE>REF(OPEN,1);吊颈O=H && (OPEN-CLOSE)/(HIGH-LOW)<1/3 && (HIGH-LOW)/HIGH>0.05;低开大阳线OPEN<REF(LOW,1) && OPEN/REF(CLOSE,1,1.98) && CLOSE/OPEN>1.04 ;跳空缺口LOW>REF(HIGH,1) && LOW/REF(HIGH,1)>1.02;MA普通金叉CROSS(MA(CLOSE,5),MA(CLOSE,10)) && MA(CLOSE,5)>MA(CLOSE,10) && MA(CLOSE,10)>MA(CLOSE,20)3条均线多头排列持续3天CC:= MA(CLOSE,5)>MA(CLOSE,30) && MA(CLOSE,10)>MA(CLOSE,30); EVERY(CC,3)=1 ;均线死叉CROSS(MA(CLOSE,10),(CLOSE,5));当日成交量放大2倍的金叉CROSS(MA(CLOSE,5),MA(CLOSE,10)) && VOL/REV(VOL,1)>2 KDJ指标RSV:=(CLOSE-LLV(LOW,N1))/(HHV(HIGH,N1)-LLV(LOW,N1))*100;K:=SMA(RSV,N2,1);D:=SMA(K,N3,1);综合判断条件CROSS(K,D)&&D ;RSI指标N1[2.0.7] N2[2.0.14]LC := REF(CLOSE,1);RSI1:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100; RSI2:SMA(MAX(CLOSE-LC,0),N2,1)/SMA(ABS(CLOSE-LC),N2,1)*100;WR指标N[2.100.14]WR:100*(HHV(HIGH,N)-CLOSE)/(HHV(HIGH,N)-LLV(LOW,N));综合判断条件CROSS(WR,80)CROSS(WR,20)MACD指标L1[1.40.12] L2[1.100.26] L3[1.60.9]DIFF:EMA(CLOSE,L2)-EMA(CLOSE,L3);DEA:EMA(DIFF,L1);MACD:2*(DIFF-DEA),COLORSTICK;BOLL通道N[5.300.26] M[1.100.26] P[1.10.2]MID:MA(CLOSE,N);//求N个周期的收盘价均线,称为布林通道中轨TMP2:=STD(CLOSE,M);//求M个周期内的收盘价的标准差TOP:MID+P*TMP2;//布林通道上轨BOTTOM:MID-P*TMP2;//布林通道下轨多空指数(BBI)指标MA3 := MA(CLOSE,3);MA6 := MA(CLOSE,6);MA12 := MA(CLOSE,12);MA24 := MA(CLOSE,24);BBI:(MA3+MA6+MA12+MA24)/4;乖离率(BIAS)指标BIAS1:((CLOSE-MA(CLOSE,L1))/MA(CLOSE,L1))*100;BIAS2:((CLOSE-MA(CLOSE,L2))/MA(CLOSE,L2))*100;BIAS3:((CLOSE-MA(CLOSE,L3))/MA(CLOSE,L3))*100;OBV指标编写编写要点:第一步,如果今收盘价>昨收盘价,那么成交量为正:AA:=IFELSE(CLOSE>REF(CLOSE,1),VOL,0);第二步,如果今收盘价<昨收盘价,那么成交量为负:BB:=IFELSE(CLOSE<REF(CLOSE,1),-VOL,0);第三步,将所有的成交量加和:CC:=AA+BB;第四步,统计所有的周期上的成交量即得 OBV。
程序化交易简介

程序化交易一、程序化交易简介程序化交易又称系统程式交易,即利用行情软件和电脑程序,借助市场技术指标,由预定程序计算出买卖点,电脑自动依据其讯号进行买进或卖出的动作,而不以操作人的看法进行操作。
二、程序化交易分类(1)常见交易策略有指数套利交易策略、数量程序交易策略、动态对冲策略、久期平均策略、配对交易策略等。
(2)程序化交易系统大致分成价值发现型、趋势追逐型、做市商型、高频交易型、低延迟套利型等。
三、程序化交易系统特点程序化交易致力于处理现在的交易,而不是未来的交易,它最大优点在于绝对的客观,可以帮助系统使用者最大程度地克服人性的贪婪和恐惧。
1、顺势交易:大多数交易系统都是顺势交易系统,也存在一些逆势交易系统。
2、纯粹技术分析性:系统交易方法完全排除任何基本面分析的影响。
3、客观性:程序化交易系统以计算机为决策工具,完全排除了决策主体的主观判断,从而有效解决了交易者的情绪对交易的负面影响这个问题。
4、数量化:完全数量化。
5、机械化:程序化交易系统的全部规则和参数完全机械化,使得系统交易方法相对于非系统交易方法而言比较容易实施。
6、资金管理制度化:资金管理制度是交易系统的有机组成部分。
7、风险控制制度化:风险控制制度是交易系统的有机组成部分。
8、系统性:交易系统本身是一个系统,交易小组和交易系统二者又构成一个新的更大的系统。
9、一致性:采用系统交易方法,使得交易决策活动具有一致性,这对于交易者获得长期的稳定的获利具有根本意义。
10、反应迅速:程序化交易系统对于市场的波动反应迅速,有利于系统交易者在剧烈波动的行情中抓住瞬息即逝的交易机会。
11、风险型决策:如果一个交易者采用系统交易方法进行交易决策活动,那么系统发出的每笔交易指令的具有相对稳定的获胜概率和期望收益率,这就使得在系统交易方法指导下的交易决策成为一种风险型决策。
风险型决策的系统交易方法有利于交易者运用现代投资组合理论和方法。
这一点对于非主力大资金非常有利。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文华财经施巍巍来自理解并规范使用交易模型、技术指标等以下名词
**交易模型:指能够发出BK、SP等交易指令但是不绘出图线的公式, 模型还包含止损、止赢,交易手数等与交易、资金使用相关的参数设 置。交易模型是一个交易范畴的概念。 **指标:也叫技术指标,指能够绘出图线但是不发出交易指令的公式。 指标是一个技术分析范畴的概念。 **公式:泛指指标、模型。不建议大家使用这个词,因为大家搞不明 白你说的到底是指标还是交易模型。 **交易系统:这个词太笼统,不建议使用这个词。有时候指的是指标, 有的时候指的是模型,有的时候指的是存在心中的交易思想和经验, 有的时候还指交易软件。 **交易信号:指技术指标上出现的提示投资者买卖的指示,可以是图 线交叉、文字、图形。投资者需要按照信号指示去手动委托下单。交 易信号是一个技术分析范畴的概念。 **交易指令:指交易模型自动发出的下单委托指令,可以不经过投资 者确认直接下单,也可以等待投资者回车确认再下单。交易指令在K 线图上以不用颜色和形状的箭头来代表。交易指令是一个程序化交易 范畴的概念。
金融统计函数BARSLAST
BARSLAST(X)求上一次条件成立到当前的周期数。 使用BARSLAST函数可以起到过滤作用,例如KD数值 接近纠结在一起时交叉过于频繁,使用BARSLAST就可 以过滤掉一些交叉: RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)LLV(LOW,N))*100; K:=SMA(RSV,M1,1); D:=SMA(K,M2,1); CROSS(K,D)&&BARSLAST(CROSS(K,D))>P,BPK; CROSS(D,K)&&BARSLAST(CROSS(D,K))>P,SPK;
组合应用
TMP:=OPEN-CLOSE; DRAWLINE(TMP>0.00001,HIGH,TMP>0.00001,OPEN,COLORCYAN); DRAWLINE(TMP>0.00001,LOW,TMP>0.00001,CLOSE,COLORCYAN); DRAWLINE(TMP<-0.00001,HIGH,TMP<-0.00001,CLOSE,COLORRED); DRAWLINE(TMP<-0.00001,LOW,TMP<-0.00001,OPEN,COLORRED); DRAWLINE(ABS(TMP)<0.00001,LOW,ABS(TMP)<0.00001,OPEN,COLOR WHITE); DRAWLINE(ABS(TMP)<0.00001,HIGH,ABS(TMP)<0.00001,OPEN,COLO RWHITE); STICKLINE(TMP>0,OPEN,CLOSE,COLORCYAN,0); STICKLINE(TMP<=0,OPEN,CLOSE,COLORRED,1); MA1:MA(CLOSE,N1),COLORRED; MA2:MA(CLOSE,N2),COLORYELLOW; MA3:MA(CLOSE,N3),COLORGREEN; MA4:MA(CLOSE,N4),COLORMAGENTA;
因此可编写交易模型如下:
A:=VALUEWHEN(TIME=0900,OPEN); CLOSE>=A&&TIME<1455,BK; CLOSE>A||TIME>=1455,BP; CLOSE<A&&TIME<1455,SK; CLOSE<A||TIME>=1455,SP;
效果图如下,图中黄色水平线为当日开盘价
REF(X,N)作用
(1)解决当前周期交易指令不稳定 (2)判断线类指标值是否拐头 (3)其它
模型1
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); J:=3*K-2*D; (CROSS(J,0)||((REF(K,1)<20)&&(REF(D,1)<20) &&(CROSS(K,D)))),BK; CROSS(50,K),SP; CROSS(K,50),BP; (CROSS(100,J)||((D>80)&&(K>80)&&(CROSS(D ,K)))),SK;
逻辑判断函数VALUEWHEN 与 时间函 数TIME
在一分钟周期上如何实现:根据最新价与当日开 盘价的大小关系作为买卖条件编写交易模型; 问题: 1、如何在分钟周期上取得日开盘数据? 2、如何使交易模型不留隔夜单?
1、使用逻辑判断函数取得当日开盘价: VALUEWHEN(COND,DATA)当条件COND 满足时,取当时的DATA的值,否则取得 VALUEWHEN的前一个值。 当日开盘价可以表示为: O:VALUEWHEN(TIME=0900,OPEN); 2、使用时间函数在尾盘时将所有仓单了结: TIME>=1455,BP; TIME>=1455,SP;
2、同时有多个条件 、
5周期均线上穿 周期均线并且前个周期 周期均线上穿10周期均线并且前个周期 周期均线上穿 或者KD金叉时并且 的J值(KDJ)少于 或者 金叉时并且 值 )少于70或者 J值小于 时买开; 值小于30时买开 值小于 时买开; KD出现死叉并前个周期 值大于70时卖平 KD出现死叉并前个周期J值大于70时卖平 出现死叉并前个周期J值大于 5周期均线下叉 周期均线并且前个周期 周期均线下叉10周期均线并且前个周期 周期均线下叉 或者KD死叉时并且 的J值(KDJ)大于 或者 死叉时并且 值 )大于30或者 J值大于 时卖开; 值大于70时卖开 值大于 时卖开; KD出现金叉并前个周期 值小于30时卖平 出现金叉并前个周期J值小于 时卖平 出现金叉并前个周期 值小于 关键操作符: (并且) 关键操作符:&&(并且) ||(或者) (或者)
例5 成交量
STICKLINE(OPEN>CLOSE,VOL,0,COLORCY AN,0); STICKLINE(OPEN<=CLOSE,VOL,0,COLORR ED,0);
例6 期货指南针
STICKLINE(SMA(CLOSE,3,1)<SMA(CLOSE,2 2,1),OPEN,CLOSE,COLORCYAN,0); DRAWLINE(SMA(CLOSE,3,1)<SMA(CLOSE,2 2,1),HIGH,SMA(CLOSE,3,1)<SMA(CLOSE,22, 1),LOW,COLORCYAN); STICKLINE(SMA(CLOSE,3,1)>SMA(CLOSE,2 2,1),OPEN,CLOSE,COLORRED,0); DRAWLINE(SMA(CLOSE,3,1)>SMA(CLOSE,2 2,1),HIGH,SMA(CLOSE,3,1)>SMA(CLOSE,22, 1),LOW,COLORRED);
一、技术指标
掌握:(1)公式基本语法 (2)基础函数意义 (3)函数组合应用
例1
简单公式
A:=(HIGH-OPEN)-(OPEN-LOW); B:SUM(A,0),COLORWHITE; C:0,COLORRED;
例2
KDJ公式
RSV:=(CLOSELLV(LOW,N))/(HHV(HIGH,N)LLV(LOW,N))*100; K:SMA(RSV,M1,1),COLORWHITE; D:SMA(K,M2,1),COLORYELLOW; J:3*K-2*D,COLORMAGENTA;
二、交易模型
掌握:交易模型的几种基本形式
1、交叉问题 、
10周期的均线上穿 周期的均线时买开; 周期的均线上穿20周期的均线时买开; 周期的均线上穿 周期的均线时买开 5周期的均线下叉 周期的均线时卖平; 周期的均线下叉10周期的均线时卖平 周期的均线下叉 周期的均线时卖平; 10周期的均线下叉 周期的均线时卖开; 周期的均线下叉20周期的均线时卖开 周期的均线下叉 周期的均线时卖开; 5周期的均线上穿 周期的均线时买平; 周期的均线上穿10周期的均线时买平 周期的均线上穿 周期的均线时买平; 关键函数: 关键函数:CROSS(X,Y) ( , )
例8 多条件
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); J:=3*K-2*D; MA5:=MA(CLOSE,N1); MA10:=MA(CLOSE,N2); (CROSS(MA5,MA10)&&REF(J,1)<70)||(CROSS(K ,D)&&J<30),BK; CROSS(D,K)&&REF(J,1)>70,SP; (CROSS(MA10,MA5)&&REF(J,1)>30)||(CROSS(D ,K)&&J>70),SK; CROSS(K,D)&&REF(J,1)<30,BP;
逻辑判断EVERY 逻辑判断
EVERY(COND,N)判断过去N个周期内是否一直 满足条件COND。 例:EVERY(CLOSE>OPEN,5);表示5个周期内一 直是阳线 使用此函数可以简化交易模型内容,比如要表示 均线MA5、MA10、MA20在5周期内的多头排列, 不必使用 “MA5>MA10&&REF(MA5,1)>REF(MA10,1)&& REF(MA5,1)>REF(MA20,1)&&REF(MA5,2)>RE F(MA10,2)...&&REF(MA5,5)>REF(MA20,5)”这样 繁琐的语句,只需要使用 EVERY(MA5>MA10,5)&&EVERY(MA10>MA20, 5)就可以了。