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

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

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

模型策略源碼:

 

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

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

 

 

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


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


我是怎么解決的呢?


我是這樣,將原始的選股公式選出的股票不分優(yōu)劣凡是符合信號的都選到一個板塊,這個可以利用的獨(dú)有函數(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ū)別不同選股公式選出的股票),其實很多信號需要收盤的時候才能確定的,如果怕信號閃爍,盤中可能有些股票當(dāng)天曾經(jīng)有過信號但是會時有時無信號的,這個我加入下面代碼作后續(xù)的監(jiān)控和剔除:
IF INBLOCK (FormulaName) AND 選股=0 THEN begin DELETEFROMBLOCK(STKLABEL,FormulaNam

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

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

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í)行交易,也就是當(dāng)選出很多股票時,怎么用另一個指標(biāo)對這些股票進(jìn)行排序,將排在指定位置的股票買入,其他的不做買入(當(dāng)然,這個排序在盤中也是動態(tài)變化的,但是你可以進(jìn)一步加入代碼限制你需要的時點才去排序才去執(zhí)行買入)

比如,我用當(dāng)日漲幅對這些個股票進(jìn)行排序,只買入所有選出的股票漲幅前5位的。新建一個指標(biāo)公式(注意,是指標(biāo)公式,不是選股公式):
公式名:今日漲幅
公式代碼
zf:100*(close-ref(c,1))/ref(c,1);
將這個指標(biāo)保存后供下面的真正去執(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è)置的默認(rèn)買賣金額(或者賬戶可用數(shù)的百分比)再乘以這個倍數(shù)進(jìn)行委托}); //函數(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;
將上面這個代碼保存成指標(biāo)公式,在任意品種的K線下加載,同時啟動上文所講的條件選股公式的金魔方預(yù)警,就能實現(xiàn)選股后再行排序的實盤自動買賣

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

 

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

 

 

有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友

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

 


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

相關(guān)文章

    沒有相關(guān)內(nèi)容
  主站蜘蛛池模板: 91抖音在线观看 | 狠狠色丁香婷婷综合小时婷婷 | 国产黄在线观看免费观看软件视频 | 亚州黄色网址 | 星空影院免费观看韩国三集 | 丁香婷婷激情五月 | 成人毛片在线视频 | 草比片 | 国产a级特黄的片子视频 | 91免费高清无砖码区 | 久久综合久久网 | 美女福利影院 | 黄视频网站在线 | 中文字幕日本在线mv视频精品 | 日韩在线手机看片免费看 | 99精品在免费线视频 | 日韩亚洲综合精品国产 | 久久精品一区二区三区日韩 | 亚洲国产成人综合精品2020 | 手机看片高清国产日韩片 | 欧美日韩一区二区三区免费不卡 | 六月丁香综合 | 欧美日韩91 | 日日操夜夜爱 | 美女一级ba大片免色野外 | 一级黄色片在线 | 黄色一极毛片 | 相泽亚洲一区中文字幕 | 日本高清一本视频 | 毛片在线免费观看网站 | 亚洲另类视频 | 日本中文在线视频 | 久艾草国产成人综合在线视频 | 一级日本黄色片 | 另类欧美日韩 | 日韩欧美在线视频观看 | 国产真实伦偷精品 | 亚洲 欧美 手机 在线观看 | 丝袜tube hdxxtv | 免费黄色福利 | 国产精品亚洲精品观看不卡 |