人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看

您現(xiàn)在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔模型>>正文內(nèi)容

股票自動交易的方法[金字塔模型]

模型策略源碼:

 

目前金字塔已經(jīng)與信達證券開通了合作協(xié)議,并可以直接對接信達證券的網(wǎng)上交易柜臺,用戶只要開戶就可以直接使用金字塔進行下單了

下載地址 http://61.177.74.22/xdzq_jzt20151211.exe

 

 

目前來說,對于股票交易,市面上的量化軟件還沒有真正的接口級別的自動交易,本人目前借助自制的一個中間軟件,接收某軟件傳過來的公式信號,按照某軟件傳過來的證券代碼和價格與及數(shù)量(或者買入金額),自動下單到券商的同花順核新下單終端里,基本實現(xiàn)準確的靜默模式的自動交易.
● 將選股公式改寫一下,將原來用于預警的買入信號的條件當做觸發(fā)開關,該條件滿足后。中間軟件就會接收到這個信號按照指定的代碼價格數(shù)量進行買賣委托。


●通常軟件選股公式只能將符合條件的股票全部選出來,不能對選出的股票再做進一步的橫向?qū)Ρ龋瑩駜?yōu)買入這是個難題,也是一個好問題!尤其是在每天選出股票數(shù)量比較多的選股公式上更加明顯。有些公式信號質(zhì)量比較好,入場信號點也很優(yōu)越,不過就是全市場選出的股票太多,以至于沒有實盤可操作性。這個問題大家怎么解決呢,估計大部分人在這里就卡住了,可能就要人工加以二次篩選了,這樣就不能真正的實現(xiàn)自動交易嗲。


我是怎么解決的呢?


我是這樣,將原始的選股公式選出的股票不分優(yōu)劣凡是符合信號的都選到一個板塊,這個可以利用的獨有函數(shù)AddToBlock完成,做一個例子講解吧。(下面內(nèi)容涉及的代碼只是講解的例子程序,不能依此作為投資決策)

比如,我的選股公式:
選股公式名:金叉多頭
公式代碼:

 
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);

加上的這句就是將符合條件的股票實時的加入到一個自定義板塊,板塊名字和選股公式名字相同(便于區(qū)別不同選股公式選出的股票),其實很多信號需要收盤的時候才能確定的,如果怕信號閃爍,盤中可能有些股票當天曾經(jīng)有過信號但是會時有時無信號的,這個我加入下面代碼作后續(xù)的監(jiān)控和剔除:
IF INBLOCK (FormulaName) AND 選股=0 THEN begin DELETEFROMBLOCK(STKLABEL,FormulaNam

經(jīng)過這樣的改寫后,將這個公式設為金魔方的預警公式,啟動預警,每天就會將符合信號的股票在悄悄的選出并加入到和選股公式同名的板塊里,打開這個板塊,就能看到所有預警所得的股票。

如果需要每天第一次啟動這個預警時,先清空板塊,在選股公式前面還要加上清理板塊的代碼,也很簡單:

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;

好了,上面的代碼解決了選股到板塊的需要。

現(xiàn)在說說,怎么在選出的股票里擇優(yōu)執(zhí)行交易,也就是當選出很多股票時,怎么用另一個指標對這些股票進行排序,將排在指定位置的股票買入,其他的不做買入(當然,這個排序在盤中也是動態(tài)變化的,但是你可以進一步加入代碼限制你需要的時點才去排序才去執(zhí)行買入)

比如,我用當日漲幅對這些個股票進行排序,只買入所有選出的股票漲幅前5位的。新建一個指標公式(注意,是指標公式,不是選股公式):
公式名:今日漲幅
公式代碼
zf:100*(close-ref(c,1))/ref(c,1);
將這個指標保存后供下面的真正去執(zhí)行買賣股票的公式調(diào)用。


然后,真正觸發(fā)執(zhí)行買賣操作的公式如下:
公式名:金叉多頭_執(zhí)行
公式代碼:
#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\'+\'倍\'{中間軟件識別為按照設置的默認買賣金額(或者賬戶可用數(shù)的百分比)再乘以這個倍數(shù)進行委托}); //函數(shù)SENDYJ推送指令給中間軟件執(zhí)行買賣的
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線下加載,同時啟動上文所講的條件選股公式的金魔方預警,就能實現(xiàn)選股后再行排序的實盤自動買賣

注:文中提及的中間軟件、DLL及其相關函數(shù)本貼不做共享,主要是因為純個人軟件,不想大范圍共享,只是提供一個思路給有能力DIY的人去實現(xiàn)!

 

{別忘了將本網(wǎng)告訴您身邊的朋友,向朋友傳達有用資料,也是一種人情,你朋友會感謝你的。}

 

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯(lián)系技術人員 QQ: 511411198  有需要幫忙請點擊這里留言!!!進行 有償 編寫!不貴!點擊查看價格!

 


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內(nèi)容
  主站蜘蛛池模板: 午夜动态 | 免费的三级毛片 | 欧美国产日韩在线 | 日本高清一区二区三区水蜜桃 | 欧美手机在线视频 | 狼人香蕉网 | 亚洲视频不卡 | 国产一区二区三区高清 | 亚洲无遮挡| 美国aaaa一级毛片啊 | 插曲的痛一卡二卡三卡 | 一道本在线 | 国产亚洲成在线播放va | 免费观看黄色a一级录像 | 久久亚洲精品成人综合 | 国产亚洲欧美日韩综合另类 | 日本久久综合视频 | 免费看羞羞视频的网站 | 午夜综合网 | 羞羞视频网页 | 免费黄色一级片 | 欧美97| 狠狠操综合 | 高清一级毛片 | 一个人看的在线www视频 | 成年人视频在线免费看 | 精品亚洲综合在线第一区 | 天天综合天天添夜夜添狠狠添 | 久久99精品久久久久久青青91 | 老妇毛片 | 天天综合在线视频 | 26uuu另类欧美亚洲日本 | 天天艹夜夜 | 国内精品综合九九久久精品 | 欧美色图偷窥自拍 | 成人性生活视频 | 在线观看一区 | 伊人网视频在线观看 | 亚洲天堂日韩在线 | 亚洲综合在线播放 | 曰皮全部过程视频免费国产 |