第六讲从源码中提取选股公式

要点:从后往前找,删除没用条,去掉修饰符,个别加等号。

例一:找出买点

VAR1:=(((HHV(HIGH,36) -CLOSE) / (HHV(HIGH,36) -LLV(LOW,36))) *100); VAR2:=SMA(VAR1,5,1); VAR3:=SMA(VAR2,8,1);

H1:EMA(CLOSE,8),LINETHICK1; H2:EMA(H1,20),LINETHICK1; VAR4:=(CROSS(VAR2,VAR3)AND(VAR3<20)); VAR5:=((CLOSE > (LLV(CLOSE,60) + (0.3 * LLV(CLOSE,60))))AND VAR4); VAR6:=IF((CLOSE>1000),VAR4,VAR5); M1:EMA(CLOSE,60); M2:EMA(CLOSE,89); M3:EMA(CLOSE,233),LINETHICK1; M4:EMA(CLOSE,583),LINETHICK1; STICKLINE((H1>H2),H1,H2,1,0.8); STICKLINE((H1<H2),H1,H2,1,0.8); DRAWTEXT((CROSS(H1,H2) AND (CLOSE < EMA(CLOSE,60))),(LOW *0.92),'买'); DRAWTEXT(VAR6,(HIGH *1.08),'卖');分解说明:

VAR1:=(((HHV(HIGH,36) -CLOSE) / (HHV(HIGH,36) -LLV(LOW,36))) *100); VAR2:=SMA(VAR1,5,1); VAR3:=SMA(VAR2,8,1);

H1:EMA(CLOSE,8),LINETHICK1; H2:EMA(H1,20),LINETHICK1;

VAR4:=(CROSS(VAR2,VAR3)AND(VAR3<20)); VAR5:=((CLOSE > (LLV(CLOSE,60) + (0.3 * LLV(CLOSE,60))))AND VAR4); VAR6:=IF((CLOSE>1000),VAR4,VAR5); M1:EMA(CLOSE,60); M2:EMA(CLOSE,89); M3:EMA(CLOSE,233),LINETHICK1; M4:EMA(CLOSE,583),LINETHICK1; STICKLINE((H1>H2),H1,H2,1,0.8); STICKLINE((H1<H2),H1,H2,1,0.8);

第一步{从后往前找}找到下面这行 “买”的输出语句。然后看这条语句的基本条件。

DRAWTEXT((CROSS(H1,H2) AND (CLOSE < EMA(CLOSE,60))),(LOW *0.92),'买');

查看结果:输出文字交叉条件,条件直接输出语句输出位置文字

DRAWTEXT(VAR6,(HIGH *1.08),'卖');

知道 “基本条件 ”为 H1,H2,那么与此没有任何关系的语句从后往前删除。删的办法有两种:一是直接删掉;二是先用{}括上,待没问题时再一次性删除。加蓝色的为找到的不输出语句。第二步{删除没用条}后,剩下的有用语句:

H1:EMA(CLOSE,8),LINETHICK1;{加蓝的为修饰类函数,原则一

律删除。}

H2:EMA(H1,20),LINETHICK1; DRAWTEXT((CROSS(H1,H2) AND (CLOSE < EMA(CLOSE,60))),(LOW *0.92),'买');

第三步{去掉修饰符}分别去掉:指标线粗细、显示文字、文字位置函数和文字

H1:EMA(CLOSE,8); H2:EMA(H1,20); CROSS(H1,H2)ANDCLOSE <EMA(CLOSE,60);

第四步{个别加等号}条件选股只能输出一条语句,上面这三行为全部输出,所以,作为 “条件 ”的前两行还必须在冒号后面加上等号,表达不输出。结果:

H1:=EMA(CLOSE,8); H2:=EMA(H1,20); CROSS(H1,H2)ANDCLOSE <EMA(CLOSE,60);

例二、找出笑脸和买入信号以本人发过的《跟庄建仓》为例。

A01:=DYNAINFO(7); A03:=BARSCOUNT(CLOSE); A04:=(SMA((CLOSE/ HHV(HIGH,120)),3,1) *100); A05:=IF((A03>20),A04,0);

A06:=IF((LOW > A01),0,IF((HIGH < A01),1,(((A01 -LOW) + 0.009) /

((HIGH -LOW) +0.009)))); A07:=DMA(A06,(VOL/CAPITAL)) *60; A09:=IF((((A07 > 0) AND (A07 > REF(A07,1))) AND (A05 <= 88)),A07,0); Var1:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27) )*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LL V(LOW,27))*100,5,1),3,1); Var2:=EMA(Var1,8); Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1)-2*SM A(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1),3,1);趋势 :=EMA(Var3,3)-10; FILLRGN(趋势 >80,趋势 ,80); DRAWICON(CROSS(趋势 ,0),0,1); FILLRGN((A09 > 0AND (趋势 <20 OR趋势 >REF(趋势 ,1)AND趋势 <50)),0,A09),colorFFFF00;机构建仓区 :0,LINETHICK0,colorFFFF00; Var4:=(趋势 -REF(趋势 ,1))/REF(趋势 ,1)*100; STICKLINE(趋势 <=13,0,20,5,0),colorcc9900; DRAWTEXT(FILTER(趋势 <=13,15),30,'准备现金 '),colorcc9900; STICKLINE(趋势 <=13ANDVar4>13,0,50,5,0),color0099ff; Var5:=FILTER((趋势 <=13ANDVar4>13),10); DRAWTEXT(Var5,60,'买入 '),color0099ff;

STICKLINE(趋势 >=90ANDVar4,0,30,5,0),colorgray; Var6:=FILTER(趋势 >=90,10); DRAWTEXT(Var6,40,'清仓 '),colorgray; Var7:=LLV(LOW,30); Var8:=HHV(HIGH,30); Var9:=EMA((CLOSE-Var7)/(Var8-Var7)*4,4)*25; STICKLINE(Var9>90,100,105,10,2),COLORRED; STICKLINE(CROSS(Var4,-40),10,55,6,0),COLORRED; Var10:=(Var9-LLV(Var9,4))/(HHV(Var9,4)-LLV(Var9,4))*100; DRAWTEXT(IF(CROSS(Var9,Var10) AND Var9>87,95,0),88,'险 '),Color00FF00,ALIGN1; DRAWICON(CROSS(90,Var9),95,9); Var11:=SMA(ABS(L-REF(L,1)),3,1)/SMA(MAX(L-REF(L,1),0),3,1)*10 0; Var12:=HHV(Var11,30)*8;火焰山 :EMA(IF(LOW<=Var7 AND趋势 <40,(Var11+Var12),0),3)/618,COLORRED,linethick2; STICKLINE(火焰山 >0,0,火焰山 *1.2,8,0),COLORRED; Var13:=(MA(C,1)+MA(C,3)+MA(C,5)+MA(C,7)+MA(C,9))/5; Var14:=(MA(C,2)+MA(C,4)+MA(C,6)+MA(C,8)+MA(C,10))/5;趋势线 :趋势 ,colorff0000; Var16:=MAX(EMA(Var13,2)-EMA(Var14,5),0)*200;

Var17:=EMA(Var16,5);波浪峰 :Var17,stick,colorff00ff; STICKLINE(Var17<REF(Var17,1),0,Var17,1,0),color00ff00; Var18:=MA(趋势线 ,8); if(CROSS(Var2,Var18)ANDVar2<15,50,0),COLORRED; DRAWTEXT(CROSS(趋势线 ,Var2)AND趋势线 >REF(趋势线 ,1)AND趋势线 <50,50,'追涨 '),COLORFF0000;

分析:这个公式输出语句非常多,但多数都是用于趋势判断的。所以不用管它。仍按我们既定的思路进行。第一步{从后往前找},先删除发出信号关键语句之后的(红色为输出语句,它以下的语句已经删去,蓝色为等待下步删除的)

A01:=DYNAINFO(7); A03:=BARSCOUNT(CLOSE); A04:=(SMA((CLOSE/ HHV(HIGH,120)),3,1) *100); A05:=IF((A03>20),A04,0); A06:=IF((LOW > A01),0,IF((HIGH < A01),1,(((A01 -LOW) + 0.009) / ((HIGH -LOW) +0.009)))); A07:=DMA(A06,(VOL/CAPITAL)) *60; A09:=IF((((A07 > 0) AND (A07 > REF(A07,1))) AND (A05 <= 88)),A07,0); Var1:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27) )*100,5,1)-2*SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LL

V(LOW,27))*100,5,1),3,1); Var2:=EMA(Var1,8);

Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1)-2*SM A(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1),3,1);趋势 :=EMA(Var3,3)-10;

FILLRGN(趋势 >80,趋势 ,80);

DRAWICON(CROSS(趋势 ,0),0,1);

FILLRGN((A09 > 0AND (趋势 <20 OR趋势 >REF(趋势 ,1)AND趋势 <50)),0,A09),colorFFFF00;机构建仓区 :0,LINETHICK0,colorFFFF00;

Var4:=(趋势 -REF(趋势 ,1))/REF(趋势 ,1)*100;

STICKLINE(趋势 <=13,0,20,5,0),colorcc9900; DRAWTEXT(FILTER(趋势 <=13,15),30,'准备现金 '),colorcc9900; STICKLINE(趋势 <=13ANDVar4>13,0,50,5,0),color0099ff;

Var5:=FILTER((趋势 <=13ANDVar4>13),10);

DRAWTEXT(Var5,60,'买入 '),color0099ff;

第二步{删除没用条}后

Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1)-2*SM A(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1),3,1);趋势 :=EMA(Var3,3)-10; DRAWICON(CROSS(趋势 ,0),0,1); Var4:=(趋势 -REF(趋势 ,1))/REF(趋势 ,1)*100;

Var5:=FILTER((趋势 <=13ANDVar4>13),10); DRAWTEXT(Var5,60,'买入 '),color0099ff;

第三步{去掉修饰符后}:

趋势 :=EMA(Var3,3)-10; CROSS(趋势 ,0); Var4:=(趋势 -REF(趋势 ,1))/REF(趋势 ,1)*100; Var5:=FILTER((趋势 <=13ANDVar4>13),10); Var5;

第四步{个别加等号}本公式中的 “条件 ”语句都是不输出的,所以此项省略,但因是要笑脸和买入两个信号,所以还必须把它们连结起来:

Var3:=3*SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1)-2*SM A(SMA((C-LLV(L,55))/(HHV(H,55)-LLV(L,55))*100,5,1),3,1);趋势 :=EMA(Var3,3)-10; Var4:=(趋势 -REF(趋势 ,1))/REF(趋势 ,1)*100; Var5:=FILTER((趋势 <=13ANDVar4>13),10); CROSS(趋势 ,0)orVar5;江南茶外汇

问题:

我的软件是银河双子星我在写习题:10日均线与 20日均线金叉和涨幅超过百分之三,且成交量比昨天放大一倍。时做了如下操作: 1,MA1:=MA(CLOSE,10);MA2:=MA(CLOSE,20);CROSS(MA1,MA2);

2,C:=CLOSE/REF(CLOSE,1)>3/100; 3,V:=VOL/REF(VOL,1)>2; 4,CROSS(MA1,MA2)ANDCLOSE/REF(CLOSE,1)>3/100AND(VOL/VOL,1)>2;但我完成测试时电脑不给通过上面提示说"行 2:缺少;"请问我是哪里错了?谢谢!

讲解一下

1、收盘价等专用函数如( C,O,H,L,V,AND,OR)是不能作为引导语句的。 2、后面输出和前面交待的条件多处重复。整理后的:

MA1:=MA(CLOSE,10); MA2:=MA(CLOSE,20); CROSS(MA1,MA2)ANDCLOSE/REF(CLOSE,1)>3/100 AND VOL/(VOL,1)>2;

或者:

MA1:=MA(CLOSE,10); MA2:=MA(CLOSE,20); AA:=CROSS(MA1,MA2); BB:=CLOSE/REF(CLOSE,1)>3/100; VV:=VOL/REF(VOL,1)>2; AAANDBBANDVV;

编写公式如同做数学题,要有一个反复领会和实践的过程,不能指望一蹴而就。没事时打开公式编辑器,从简单的入手,编几个,看看图形,慢慢就会,熟能生巧。

第六讲从源码中提取选股公式相关推荐

  1. 从FFmpeg 4. 2源码中提取dshow mjpeg code步骤

    之前在https://blog.csdn.net/fengbingchun/article/details/103735560 中介绍过在Windows上通过vs2017编译FFmpeg源码进行单步调 ...

  2. 从编译器源码中提取ARMv8的指令编码

    2012年11月份的资料,之前ARMv8手册还没发布,我想办法从编译器的binutils中提取出了所有ARMv8指令的二进制编码,之前不能随便发,现在相当于解禁了^_^. 问题1:提取ARMv8的指令 ...

  3. word2vec 中的数学原理详解(六)若干源码细节

    word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单.高效,因此引起了很多人的关注.由于 word2vec 的作者 Tomas Miko ...

  4. 面试官系统精讲Java源码及大厂真题 - 24 举一反三:队列在 Java 其它源码中的应用

    24 举一反三:队列在 Java 其它源码中的应用 世上无难事,只要肯登攀. 引导语 队列除了提供 API 供开发者使用外,自身也和 Java 中其他 API 紧密结合,比如线程池和锁,线程池直接使用 ...

  5. 初学者也能看懂的 Vue2 源码中那些实用的基础工具函数

    1. 前言 大家好,我是若川.最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12 想学源码,极力推荐之前我写的<学习源码整体架构系列>jQuery.underscore.l ...

  6. 【Faster R-CNN论文精度系列】从Faster R-CNN源码中,我们“学习”到了什么?

    [Faster R-CNN论文精度系列] (如下为建议阅读顺序) 1[Faster R-CNN论文精度系列]从Faster R-CNN源码中,我们"学习"到了什么? 2[Faste ...

  7. 1.网页源码中找到我们需要获取

    一.需求分析 二.页面分析 我们需要在网页源码中找到我们需要获取的信息.所有我们在刷新页面后出现的3个XHR下需找我们需要的信息. 依次点开找到最后一个包如图. 打开任意一个列表(这里不确定是不是列表 ...

  8. 视觉机器学习20讲-MATLAB源码示例(16)-CNN学习算法

    视觉机器学习20讲-MATLAB源码示例(16)-CNN学习算法 1. CNN学习算法 2. Matlab仿真 3. 仿真结果 4. 小结 1. CNN学习算法 卷积神经网络(CNN 或 ConvNe ...

  9. Alink漫谈(十六) :Word2Vec源码分析 之 建立霍夫曼树

    Alink漫谈(十六) :Word2Vec源码分析 之 建立霍夫曼树 文章目录 Alink漫谈(十六) :Word2Vec源码分析 之 建立霍夫曼树 0x00 摘要 0x01 背景概念 1.1 词向量 ...

最新文章

  1. git分支合并(包含学习git命令的方法)
  2. struts2处理上传文件路径问题
  3. HDFS--Hadoop分布式文件系统
  4. ob_start ob_end_clean的用法 fetch
  5. 使用行动列表去创造简单且可扩展的游戏AI
  6. python教程长城图案,Python编写万花尺图案实例
  7. Mysql找不到mysql.sock怎么办?
  8. windows php5.3升级,Windows10系统将PHPNOW升级PHP版本为5.3.5
  9. P1666 前缀单词
  10. java三个整型变量_初值自定义.if按由小到大的顺序输出这三个数_C语言实现3个数从小到大排序/输出的方法示例...
  11. Spring Boot 框架介绍和使用
  12. Ubuntu与Windows时间不同步解决办法
  13. 【手写数字识别】基于matlab GUI贝叶斯+线性分类器手写数字识别【含Matlab源码 828期】
  14. ORB-SLAM2安装报错历程
  15. vue 倒计时 插件_vue+moment实现倒计时效果
  16. NIOS系统固化方法汇总(详细步骤)
  17. 用U盘安装Windows server 2012 R2
  18. 联想G40进入BIOS
  19. git切换分支:The following untracked working tree files would be overwritten by checkout:
  20. python——洗牌算法

热门文章

  1. Principal Component Analysis(PCA)
  2. 基于Matlab Robotics Toolbox的Dobot机械臂运动规划(3)
  3. 面试机器学习算法,你需要知道这18个知识点!
  4. 实习市场竞争激烈,大一就去实习小伙伴们惊呆了
  5. ISP Tuning—高通Chromatix6
  6. 1553B数据总线用终端电连接器-DK-6211
  7. 50个常见的 Java 错误(第三部分)
  8. iPhone手机经常有些APP图标前面有个小云朵,点击图标后,进行转圈下载,提示正在载入......
  9. linux 修改用户密码 报错,linux中修改用户密码报错 passwd:Authentication token manipulation error...
  10. C++数据类型 浅显理解