分析家公式网,提供股票公式,股票软件用户登录  |  用户 注册
股票自动交易办法【金字塔软件 源码 贴图 】
  • 软件大小:4.00 KB
  • 推荐星级:
  • 更新时间:2016-05-07 00:27:00
  • 软件类别: 国产软件 / 金字塔公式
  • 软件语言:简体中文
  • 授权方式: 免费版
  • 联系方式:暂无联系方式
  • 官方主页: Home Page
  • 点击大图:  【一键转帖到论坛】
  • 插件情况:
  • 运行环境:Win9X/Win2000/WinXP/Win2003/Win7/
  • 相关Tags:股票自动交易办法  金字塔软件  
  • (1)100%
    (0)0%

软件介绍

目前来说,对于股票交易,市面上的量化软件还没有真正的接口级别的自动交易,本人目前借助自制的一个中间软件,接收某软件传过来的公式信号,按照某软件传过来的证券代码和价咯与及数量(或者买入金額),自动下单到券商的同花顺核新下单终端里,基本实现准确的静默模式的自动交易.
● 将选股公式改写一下,将原来用于预警的买入信号的条件当做触发开关,该条件满足后。中间软件就会接收到这个信号按照指定的代码价咯数量进行买卖委托。


●通常软件选股公式只能将符合条件的股票全部选出来,不能对选出的股票再做进一步的横向对比,择优买入。这是个难题,也是一个好问题!尤其是在每天选出股票数量比较多的选股公式上更加明显。有些公式信号质量比较好,入场信号点也很优越,不过就是全市场选出的股票太多,以至于没有实盘可操作性。这个问题大家怎么解决呢,估计大部分人在这里就咔住了,可能就要人工加以二次筛选了,这样就不能真正的实现自动交易嗲。


我是怎么解决的呢?


我是这样,将原始的选股公式选出的股票不分优劣凡是符合信号的都选到一个板块,这个可以利用的独有函数AddToBlock完成,做一个例子讲解吧。(下面内容涉及的代码只是讲解的例子程序,不能依此作为投资决策)

比如,我的选股公式:
选股公式名:金叉多头
公式代码:

buytj1:=cross(ma(c,5),ma(c,10));
buytj2:=ma(c,10)>ma(c,30);
选股:buytj1 and buytj2;
我将这个选股公式改写一下:
buytj1:=cross(ma(c,5),ma(c,10));
buytj2:=ma(c,10)>ma(c,30);
选股:buytj1 and buytj2;
if 选股 then AddToBlock(STKLABEL,FormulaName);

加上的这句就是将符合条件的股票实时的加入到一个自定义板块,板块名字和选股公式名字相同(便于区别不同选股公式选出的股票),其实很多信号需要收盘的时候才能确定的,如果怕信号闪烁,盘中可能有些股票当天曾经有过信号但是会时有时无信号的,这个我加入下面代码作后续的监控和剔除:
IF INBLOCK (FormulaName) AND 选股=0 THEN begin DELETEFROMBLOCK(STKLABEL,FormulaNam

经过这样的改写后,将这个公式设为***的预警公式,启动预警,每天就会将符合信号的股票在悄悄的选出并加入到和选股公式同名的板块里,打开这个板块,就能看到所有预警所得的股票。

如果需要每天第一次启动这个预警时,先清空板块,在选股公式前面还要加上清理板块的代码,也很简单:
if getglobalvar(FormulaName+'清理')<>CurrentDate and IsLastBar Then
begin
SetGlobalVar(FormulaName+'清理',CurrentDate);
for $i=1 to STKCOUNT(FormulaName) Do
Begin
DELETEFROMBLOCK (STKFROMBLK(FormulaName,1) ,FormulaName);
end;
end;


好了,上面的代码解决了选股到板块的需要。

现在说说,怎么在选出的股票里择优执行交易,也就是当选出很多股票时,怎么用另一个指标对这些股票进行排序,将排在指定位置的股票买入,其他的不做买入(当然,这个排序在盘中也是动态变化的,但是你可以进一步加入代码限制你需要的时点才去排序才去执行买入)

比如,我用当日涨幅对这些个股票进行排序,只买入所有选出的股票涨幅前5位的。新建一个指标公式(注意,是指标公式,不是选股公式):
公式名:今日涨幅
公式代码:
ZF:100*(close-ref(c,1))/ref(c,1);

将这个指标保存后供下面的真正去执行买卖股票的公式调用。


然后,真正触发执行买卖操作的公式如下:
公式名:金叉多头_执行
公式代码:
#Run_By_Serie
#Run_Every_Tick


VARIABLEs:kcbar[200](0),hcbar[200](0);


盘中:=between(currenttime,SESSIONSTARTTIME(1),SESSIONENDTIME(1)) or between(currenttime,SESSIONSTARTTIME(2),SESSIONENDTIME(2));

if IsLastBar then
begin
vark:STKCOUNT(StrLeft(FormulaName,StrLen(FormulaName)-3)),LineThick0;
for $i=1 to min(200,vark) Do
begin
varlh:=RefIndi(STKFROMBLK(StrLeft(FormulaName,StrLen(FormulaName)-3),$i),'今日涨幅.ZF',p_day,0);
kcbar[$i]:=varlh[0];
hkcbar[$i]:=varlh[0];
end;

varsort:=sort(hkcbar,1,1,vark);
varpos:=Sortpos(kcbar,1,1,vark);

strtk:='';
for ik=1 to min(200,vark) Do
begin
hdai:=STKFROMBLK(StrLeft(FormulaName,StrLen(FormulaName)-3),kcbar[ik]);
ingZF:=hkcbar[ ik];

//////// ///////////// 推送信号

if ik<=5{推送涨幅排序前五} and 盘中 and ingZF<5{涨幅不超过5%才推送} and getglobalvar(StrLeft(FormulaName,StrLen(FormulaName)-3)+STKNAMEEX (hdai)+'t')=0 Then
begin
if WeekDayOfDate ( currentdate)<>6 and WeekDayOfDate ( currentdate)<>0 then
begin
存时:=SetGlobalVar(StrLeft(FormulaName,StrLen(FormulaName)-3)+STKNAMEEX (hdai)+'t', if(DataPeriod>=P_Day,Date,date*10000+Hour*100+Minute));
end;
buyy:=SENDYJ('192.168.0.1','717','主的宽恕','■'+'交易信号:'+StrLeft(FormulaName,StrLen(FormulaName)-3),hdai,STKNAMEEX (hdai),'.1'{这个到了中间软件那边就识别为按照即时的卖1价买入},NUMTOSTR (CURRENTTIME (),0)+':1'+'倍'{中间软件识别为按照设置的默认买卖金額(或者账户可用数的百分比)再乘以这个倍数进行委托}); //函数SENDYJ推送指令给中间软件执行买卖的
FILEAPPEND('C:\\Documents and Settings\\Administrator\\桌面\\'+StrLeft(FormulaName,StrLen(FormulaName)-3)+'_推送记录.doc', strright(NUMTOSTR (Month+100,0),2)+'-'+NUMTOSTR (Day,0)+' '+strright(NUMTOSTR (InTPart(currenttime/10000)+100,0),2)+':'+strright(NUMTOSTR (InTPart(currenttime/100),0),2)+':'+strright(NUMTOSTR (currenttime,0),2)+' '+hdai+'【'+STKNAMEEX (hdai)+'】'+'.1'+'元 1'+'倍');
end;

/////////////////////////////////////////

strtk:=strtk+'\n'+StrRight(' '+NumToStr(ik,0),3)+') '+StrRight(hdai,6)+' '+strleft(STKNAMEEX (hdai)+' ',if(StrLen(STKNAMEEX (hdai))=4,4,8-StrLen(STKNAMEEX (hdai))+1))+' '+NumToStr(hkcbar[kcbar[ik]],2)+'%';
end;
end;
DrawTextEx(islastbar,1,10,10,strtk),Color1;

将上面这个代码保存成指标公式,在任意品种的K线下加载,同时启动上文所讲的条件选股公式的***预警,就能实现选股后再行排序的实盘自动买卖

注:文中提及的中间软件、DLL及其相关函数本贴不做共享,主要是因为纯个人软件,不想大范围共享,只是提供一个思路给有能力DIY的人去实现!

Ps:目前金字塔已经与信达证券开通了合作协议,并可以直接对接信达证券的网上交易柜台,用户只要开户就可以直接使用金字塔进行下单了

地址


软件评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

说明

* 使用方法:点击上面蓝色块,打开新页面按照提示进行

* 本网站提供的各种股票软件,例如大智慧软件,通达信软件,同花顺软件,东方财富通等等,和各种股票公式指标,例如大智慧公式,通达信公式,同花顺公式,文华公式,博易大师公式,股票价格计算公式等等公式指标等,都来源网上公开来源收集

本网提供的公式文件说明:
* alg格式飞狐股票公式,可以用飞狐交易师或者交易师软件导入;
* fnc格式大智慧新一代公式指标,可以用大智慧股票软件使用,少部分可以用分析家股票软件引入使用;
* exp格式大智慧经典版股票公式,仅可以用大智慧经典版股票软件引入使用;
* tni和tnc格式通达信股票公式,仅可以用通达信新引入使用,例如可以用通达信股票软件引入使用;
* tne,tn6格式通达信公式,可以用通达信公式编辑器5.0版导入,推荐通达信金融终端版本;
* hxf格式同花顺股票公式,仅可以用同花顺股票软件引入使用。
以上的各种软件都可以在本网股票软件栏目找到!

* 关于股票公式时间限制,如果在引入大智慧公式,交易师公式或者飞狐公式的时候,发现公式名称栏是空白的,这时候调整电脑时间到1997年,又能出现公式名称,并且能正常显示,可能是公式使用期限已过。
* 关于还原公式源码如果你忘记了自己编写的大智慧公式,通达信公式,同花顺公式,操盘手公式,飞狐公式,博易大师公式,金字塔公式,文华公式和交易师公式等等公式的密码,本网可帮恢复源码,有.偿.服.务无意勿扰,点击在线咨询联系我。

* 关于股票公式源码编辑
本网提供的源码,一般都可以编辑成公式,如果不明白公式的编辑,在本页右侧教程录像可参考,或者找公式教程资料学习,请搜索:教程

* 如果您发现软件内容或者链接错误,请点击报告错误谢谢!
* 站内提供的所有软件包含源码均是由网上搜集,若侵犯了你的版权利益,请联系通知我们!

关于本站 | 网站帮助 | 广告合作 | 声明 | 友情连接 | 网站地图 |
分析家公式网声明:本站所有股票公式软件资料均网上公开收集,如侵权请联系删帖。站内所有广告,均与本站无关!
Copyright © 2003-2022 fxjgsw.Com. All Rights Reserved .
页面执行时间:7,875.00000 毫秒