- 相关简介: 今日股市
- 内容标签:
- 浏览次数:
- 运行环境: Win10,Win8,Win7,WinXP
- 文章作者: 操盘手公式网
- 文章来源: www.stock87.com
- 加入时间: 2020-01-17 00:05:16
- 解压密码: www.stock87.com(请仔细输入!复制无效!)
炒股软件优化问题无解决!做程序这行,看公式难免会想到优化问题..
网上有很多公式要说有多厉害,比如五彩K线,哪个最好,到什么程度,没有具体的数值,特意写了一个公式,用于多组合五颜六色的K线指标,选择最后的组合,这是最需要的..
这无疑是最灵活的方法,以获得您的更大的想法,而不是您自己的测试工具,并给予定量验证。
要求也略高,可以写基本的公式代码,可以在我这个代码中自己任意修改,前后框不需要移动,只需要换中间..
同时,如果您优化参数为一个指标,您也可以使用这个来改进,无非是多个for循环,欢迎讨论。
另外,账户里没有金币,不能完全免费,真的和我没有金币,寄出去,有时间上来就会回复。
代码示例,详见附件:
1。引入黄金立方体后,打开k图,即日线;kt交易者也基本上是支持的,只是每次需要在另一个公式中将全局变量g_current指数重置为0。还可以在软件菜单,程序事务->全局变量中查看,修改,删除金魔法..
2。开放浦发银行60万K图
3.将此公式拖动到绘图索引中,等待在绘图窗口中出现白线,表示计算已经完成..如果你的机器很慢,在主窗口的右上角可能会有一个连续旋转的黄色圆圈。
因为软件的bug,有时候前几个股票都算出来之后,不会自动跳转到下一个股票,所以需要手动转到下一个,我通常用键盘的pgDn,也就是下一个页面来完成,鼠标滚动一些都是缩放功能,有些太快了,超过了很多股票..
5.等等,配方跑出来的混料自动设置图纸索引为kd j索引,然后跳转到浦发银行的K线图..这代表了所有统计数据的完成。
在excel中查看csv文件,可以统计不同参数组合的总数和成功数..
7.显然,框架是在公式的两端。这个框架的作用是能够完全控制自己思维的实现,并对所有的数据进行测试,得到自己思维的全部测试结果。
8.这一框架能做些什么:
任意数量指标的组合都可以通过多个循环来解决,但计算复杂度有一个问题需要注意;毕竟3000多个A股,一秒钟需要一个小时,我以前最长的时间是24小时,但它对于优化真的很有效,不是转几个K线图就能比较出来的。
单个指标的参数优化,如macd金叉,12269最合适吗??不一定,根据自己的优化目标进行参数优化,然后自己的优化是自己的,心理谱,也很容易使用。
比较复杂,多个指标和参数的组合优化在一起,工作量肯定不小,可以通过多台机器分别运行,比如第一台机器只跑在1000股前面,第二台继电器,第三台继电器,结果可以直接组合..
9。在结果中,我们需要根据股票代码和参数做一个唯一的值,理论上不应该重复,或者只重复一次,但是软件有一个错误,这种删除仍然需要做,有一半的机会没有重复的结果。
stkblkName:='A股板块';
stkblkcount:=STKCOUNT(stkblkName);
currentIndex := GetGlobalVar('G_currentIndex');
if currentindex<1 then
currentindex:=1;
Else
currentindex+=1;
setGlobalVar('G_currentIndex',currentindex);
//下面加入需要统计的内容
Function getCondi
input:
CondiNumber(1,1,30000);
Begin
cond1:= REF(CLOSE,2)/REF(OPEN,2) < 0.95 AND
REF(OPEN,1) < REF(CLOSE,2) AND
ABS(REF(OPEN,1)-REF(CLOSE,1))/REF(CLOSE,1)<0.03 AND
CLOSE/OPEN>1.05 AND CLOSE>REF(CLOSE,2);//早晨之星
cond2:=REF(CLOSE,1)/REF(OPEN,1)<0.97 AND
CLOSE/OPEN>1.03 AND
OPEN<REF(CLOSE,1) AND
CLOSE>REF(CLOSE,1);//曙光初现
cond3:=REF(CLOSE,2)>REF(OPEN,2) AND
REF(CLOSE,1)>REF(OPEN,1) AND
CLOSE>OPEN AND
REF(CLOSE,1)>REF(CLOSE,2) AND
CLOSE>REF(CLOSE,1); //三个白武士
cond4:=HIGH=CLOSE AND HIGH<>LOW; //光头阳线
cond5:=CLOSE/OPEN>1.05 AND HIGH/LOW < CLOSE/OPEN+0.018; //大阳烛 继续看涨或者见底
cond6:=LOW>REF(HIGH,1); //向上突破缺口
cond7:=(HIGH-MAX(CLOSE,OPEN))/(HIGH-LOW)>0.667 and Range(abs(close/ref(close,1)-1),0.009,0.031); //仙人指路
cond8:=1;//"000diFenXing.ot"(0) ;,原本为缠论中底分型条件,这里暂时取消,不影响测试,可以换成自己的任何其他指标
cond9:=cross("dmi-ql.pdi","dmi-ql.mdi" );//
if(CondiNumber>0) then Begin
i:=INTPART((CondiNumber-1)/2)+1;//七个指标中的哪一个
j:=CondiNumber-(i-1)*2;//1 2 3表示一个指标的ref(,1),exist(,1)状态,
cond:=false;
Switch (i) Begin
case 1: Begin
cond:=cond1;
end
case 2: Begin
cond:=cond2;
end
case 3: Begin
cond:=cond3;
end
case 4: Begin
cond:=cond4;
end
case 5: Begin
cond:=cond5;
end
case 6: Begin
cond:=cond6;
end
case 7: Begin
cond:=cond7;
end
case 8: Begin
cond:=cond8;
end
case 9: Begin
cond:=cond9;
end
end;
Switch (j) Begin
case 1: Begin
cond:=ref(cond,1);
end
case 2: Begin
//cond:=cond;
end
end;
end;
Else//其它因子默认为true
cond:=true;
Return cond;
end;
close_zhangTing:=round(ref(close,1),3)+round(round(ref(close,1),3)*0.1,3);
close_new:=round(close,3);
FeiZhangTingcond01:=iif(close_new>=close_zhangTing,0, close_zhangTing-close_new>=0.010) ;//非涨停严格条件
TotalNums:=18;
GroupNums:=2;
Cond005:=close*1.005<=max(refx(high,1),refx(high,2));//成功条件,对公式优化很关键,可以改成自己的任意条件,比如两日内收盘价创新高
Cond010:=close*1.01<=max(refx(high,1),refx(high,2));//
outStr = '';
filename:='d:/paras/'+FormulaName(0)+ '_'+NumToStr(DataType,0)+'.csv';
for i=1 to TotalNums do Begin //两个一组,可以设置三个或者四个一组,这里是表示一个指标的ref(,1),exist(,1)状态,{操盘手公式网-最牛股票公式学习网站 www.stock87.com}
for j=(INTPART((i-1)/GroupNums)+1)*GroupNums+1 to TotalNums do Begin
allcond:=getCondi(i) and getCondi(j) and FeiZhangTingcond01;//
if count(allcond>0,0)>0 then Begin
for k=0 to TotalNums do Begin
if k=0 or k>= (INTPART((j-1)/GroupNums)+1)*GroupNums+1 then Begin
allcond:=getCondi(i) and getCondi(j) and getCondi(k) and FeiZhangTingcond01;//
allcount:=count(allcond>0,0);
if allcount>0 then Begin
outStr := NumToStr(i,0) + ',' + NumToStr(j,0) + ',' + NumToStr(k,0) + ',' + //
NumToStr( allcount,0) + ',' +
NumToStr( count( allcond and Cond005,0),0) + ',' +
NumToStr( count( allcond and Cond010,0),0) ;
FileAppend(filename,STKLABEL,',',outStr);
end;
end;
end;
end;
end;
end;
//切换股票
if currentindex<=stkblkcount then
OpenChartView(STKFROMBLK(stkblkName,currentindex),'',P_Day);
Else
Begin
OpenChartView(STKFROMBLK(stkblkName,1),'kdj',P_Day);
PLAYSOUND(1,0,'D:\\KT\\Sound\\ALERT7.WAV');
版权保护: 本文由「操盘手公式网」编辑发布 转载请注明出处
- 银行网站(中国银行网站)
- 银行信用卡中心(银行信用卡中心是干什么的)
- 邮政储蓄10万无息贷款(邮政储蓄10万无息贷款怎么贷邮政储蓄10万无息贷款是)
- 建行信用卡中心(建行信用卡中心95134)
- 网上企业银行(网上企业银行安全的三个机制)
- 十大良心贷款平台(十大良心贷款平台推荐)
- 车险哪家保险公司好(潍坊车险哪家保险公司好)
- 网上银行查询(网上银行查询个人账户)
- 手机银行app下载安装(手机银行app下载安装最新版)
- 最值得养的5张信用卡(信用卡)
- 建设银行个人网上银行(建设银行个人网上银行开通流程)
- 平安保险(平安保险摊上大事了)
- 建设银行信用卡网上银行(建设银行信用卡网上银行现金转出额度什么时候恢复)
- 保险网站(社会保险网站)
- 保险股份有限公司(永诚财产保险股份有限公司)
- 中国最好的四大保险公司(中国最好的四大车险公司)
- 12333社保查询网官网(12333社保查询网官网app下载)
- 个人网上银行登录入口(中国建行个人网上银行登录入口)
- 保险公司十大排名
- 中国车险十大排名(中国车险十大排名表)