A. 股票高頻交易演算法,懂的進
高頻交易,就是短暫的市場變化中尋求獲利,不理會大趨勢,(平衡市裡比較適合)定好止損止盈位,得要有精確的計算能力,制定自己的一套理念,不理會別人會影響自己的任何觀點。你認為可以進就進,想出就出。10次交易6次獲利,你就是贏家。沒有固定的演算法,只有單間的加減乘除。
B. 什麼是股票高頻交易高頻交易好嗎
什麼是股票高頻交易?高頻交易好嗎?高頻交易是指從那些人們無法利用的極為短暫的市場變化中尋求獲利的計算機化交易,比如,某種證券買入價和賣出價差價的微小變化,或者某隻股票在不同交易所之間的微小價差。這種交易的速度如此之快,以至於有些交易機構將自己的「伺服器群組」(serverfarms)安置到了離交易所的計算機很近的地方,以縮短交易指令通過光纜以光速旅行的距離。股票高頻交易特徵:1,高頻交易都是由計算機自動完成的程序化交易;2,高頻交易的交易量巨大;3,高頻交易的持倉時間很短,日內交易次數很多;4,高頻交易每筆收益率很低,但是總體收益穩定。
C. 用java做一個股票軟體。
可以把股價數值和坐標軸都先乘上100。因為股價變動最小0.01,所以擴大100倍後所有股價就都是整數了。如果需要顯示數字,可以在設定顯示值是實際坐標值的1%。
D. C++還是Java 哪個響應高頻交易應用比較快
概述高頻交易的最佳解決方案是什麼?對於這個問題,觀點一直比較沖突,部分原因是人們不知道什麼叫高頻交易並且與人們想像的總是存在差異,其次是速度問題,用哪種語言開發速度會快點,本文作者拿當今非常流行的C++和Java這兩種語言進行比較。如果你是一個典型的Java和C++程序員,並且用這兩種語言編寫過典型的面向對象程序。在相同的時間下面編寫高頻解決方案,Java程序員有可能會提前完成程序並且有時間調整應用程序。在這種情形下,恕我直言,Java應用程序的速度會快些。以我的經驗,Java在執行上會好於C++,因為Java進行微基準測試,其實它沒有做什麼事情。但是如果沒有時間限制,對Java和C++程序進行調優,那麼C++程序會比Java快些。然而,考慮到資源的有限性和環境的不斷變化,一個充滿活力的語言可能會現實應用中超常發揮。在股票交易這種高頻市場,即使延遲10微秒都需要認真對待。 Java甚至標準的OOP C++,用在商業硬體上都不是最佳選擇,你需要藉助C或者精簡版的C++和一些專業的硬體工具,例如FPGAs、GPUs。然而,在外匯(FX:Foreign Exchange)市場,高頻意味著延遲時間不低於100微秒。在這個的環境下,C++或者Java(低GC)都是個不錯的選擇。個人認為,在不斷變化的交易場所,Java擁有更多的靈活性。當人們討論高頻率時,尤其是在做銀行系統的時候,他們想把時間縮短1毫秒或者單單幾毫秒。在這樣的情況下,我會說,靈活/多態的Java、Scala或者C#等語言在編程時間上將會更加充裕,可維護性或可靠性優勢將會超過C/C++或FPGA。Java所面臨的問題問題不在於這樣的語言上,而是缺乏緩存控制和上下文交互。如果你復制一塊在本地已經操作過的內存,但是在運行之間使用不同的延遲,副本將會變慢。原因是部分緩存被交換出去,而復制本身也需要一些時間。這和訪問內存的任何操作是一樣的。例如,訪問計劃對象將會更慢。private void doTest(Pauser delay) throws InterruptedException { int[] times = new int[1000 * 1000]; byte[] bytes = new byte[32* 1024]; byte[] bytes2 = new byte[32 * 1024]; long end = System.nanoTime() + (long) 5e9; int i; for (i = 0; i < times.length; i++) { long start = System.nanoTime(); System.array(bytes, 0, bytes2, 0, bytes.length); long time = System.nanoTime() - start; times[i] = (int) time; delay.pause(); if (start > end) break; } Arrays.sort(times, 0, i); System.out.printf(delay + ": Copy memory latency 1/50/99%%tile %.1f/%.1f/%.1f us%n", times[i / 100] / 1e3, times[i / 2] / 1e3, times[i - i / 100 - 1] / 1e3 ); } 這個測試其實是在多次執行同一件任務,在執行之間使用不同的延時。其中大部分時間都花在本地方法上,在測試期間沒有創建或拋棄對象。YIELD: Copy memory latency 1/50/99%tile 1.6/1.6/2.3 us NO_WAIT: Copy memory latency 1/50/99%tile 1.6/1.6/1.6 us BUSY_WAIT_10: Copy memory latency 1/50/99%tile 2.8/3.5/4.4 us BUSY_WAIT_3: Copy memory latency 1/50/99%tile 2.7/3.0/4.0 us BUSY_WAIT_1: Copy memory latency 1/50/99%tile 1.6/1.6/2.5 us SLEEP_10: Copy memory latency 1/50/99%tile 2.2/3.4/5.1 us SLEEP_3: Copy memory latency 1/50/99%tile 2.2/3.4/4.4 us SLEEP_1: Copy memory latency 1/50/99%tile 1.8/3.4/4.2 us -XX+Java 7的UseLargePagesYIELD: Copy memory latency 1/50/99%tile 1.6/1.6/2.7 us NO_WAIT: Copy memory latency 1/50/99%tile 1.6/1.6/1.8 us BUSY_WAIT_10: Copy memory latency 1/50/99%tile 2.7/3.6/6.6 us BUSY_WAIT_3: Copy memory latency 1/50/99%tile 2.7/2.8/5.0 us BUSY_WAIT_1: Copy memory latency 1/50/99%tile 1.7/1.8/2.6 us SLEEP_10: Copy memory latency 1/50/99%tile 2.4/4.0/5.2 us SLEEP_3: Copy memory latency 1/50/99%tile 2.3/3.9/4.8 us SLEEP_1: Copy memory latency 1/50/99%tile 2.1/3.3/3.7 us 上面是最好的三種運行。進行內存拷貝的典型時間(中間值)是1.6到4.6微秒,依據是否有線程在繁忙等待或休眠狀態上使用了1到10毫秒。這大概是3倍的比率,並且與Java無關,這是因為它沒有真正的控制權。即使在最好的情況下時間差大概也是2倍。代碼ThreadlatencyTest.java總結在極端高頻情況下,核心引擎一般會用C、匯編和定製的硬體實現比使用C++或JAVA面向對象實現的方式多。由於延遲需求不再那麼緊張(指當基礎平台使用C/C++搭建架構之後,應用平台層面,時間響應已不是很重要,反而開發響應更重要)。因此Java和其他動態語言可能會變得更富有成效,在這種情形下,選擇Java或許可以幫你輕松應對不斷變化的市場/需求。
E. 如何建立一個可以自動股票交易的程序
sourcecode.rar]
-
該股票分析系統可以看個股最可靠的不是基本面和k線技術
[inet_stock.zip]
-
站長96年寫的一個internet上用的股票行情、分析、交易、資訊程序源碼[stockcal.rar]
-
我自己寫的。使用eclipse環境,使用java語言編寫的股票交易
F. 網上有一種股票(hft高頻交易),有誰知道這個會不會是騙人的啊
High Frequency Trading ( HFT )高頻交易飽受輿論詬病,主要是因為包括很多專家在內的行業人士將損失和市場操縱歸咎於高頻交易模式,而不是操作風險管理缺陷和違規交易,甚至將市場不公平也歸咎於它,而不考慮大機構行為和監管漏洞。
人們時常從媒體上了解到因為「胖手指」(Fat Finger),或者因為某個機構的訂單程序進入了死循環而導致向市場中發出了巨量訂單,加之高頻交易演算法迅速反應,造成市場崩盤或者劇烈波動的情況。很多人會說,如果沒有高頻交易,人脈就不會來不及反應,那麼市場就不會這么動盪。高頻交易在市場波動的時候推波助瀾,更加劇了市場波動。實際上,即便沒有高頻交易,市場參與者也會根據自己的情況作出開平倉的決策。當這種決策具有廣泛一致性的時候,市場一樣會出現劇烈波動,這個是市場中一個常態特徵。
並不是所有高頻交易策略都採用趨勢跟隨。市場深度的增加和各種不同的交易行為反而有利於減少不必要的波動,因為大多數情況下人們和策略對行情的看法並不一致。這類情況下大多數虧損的發生,其根本原因,是參與者的操作風險和市場風險管理有嚴重缺陷造成的。比如,不按照交易規定或者策略設計執行操作,風險敞口過大而沒有留存充足的風險准備金等。這類托辭,無異於一名日線操作的交易者抱怨一分鍾線的波動太大。
同樣的,相當多的市場參與者為了盈利也會費盡心思挖掘監管漏洞和利用甚至創造市場的不公平,閃單交易就是一個典型。閃單(Flash Order)的交易模式也是屬於不公平交易的,與高頻無關。即便在人工電話下單時代,券商交易員也會根據自己情況抬高、壓低、延遲成交某些投資人的電話委託,這個也就是閃單(Flash Order)的原型。有券商資質的投行一直將該交易模式作為穩定收入來源之一,從人工到自動,後來還加入了分析客戶訂單的演算法。雖然閃單交易已經因為曝光而被禁止,但還有各類不公平的交易模式,利用著監管漏洞,充斥在市場當中。比如前些日子因為BATS閃電崩盤導致伺服器故障而暴露出的操縱市場事件。違規交易並不等同於高頻交易。
除了上述一些誤解,一些推銷高頻交易的專家有時也會有概念混淆,例如將低延時交易(Low-Latency trading)和高頻交易(High-Frequency trading)混淆為一個概念,其實並不然。與中國的券商總部集中然後交易所撮合的訂單路徑不同,歐美市場很多券商和交易所支持DMA交易模式(Direct Market Access,直接市場接入),即交易者的訂單可以直接接入到交易所進行撮合。當然國內期貨市場中上期綜合交易平台(CTP)的出現的確改善了部分非上海總部券商客戶交易上期和中金所標的的訂單路徑。
G. 股票實時交易系統如何實現高並發撮合交易最好有java架構
分布式架構最適合不過了,分布式架構+負載均衡支持百萬級數據。!!!
H. 股票中的「高頻交易」是怎麼操作的
按照字面意思,任何能夠以較高頻率進行交易的系統都可以叫「高頻交易系統」。比如說你用VBA寫個小程序,連上券商給你的介面,也完全可以按毫秒級進行交易,你也可以說自己開發了一個「高頻交易系統」。
交易指令:交易指令完全由電腦發送,對市場數據的響應延時在微秒級(VBA退散)。
系統:系統由專用的軟硬體組成,研發時需要大量計算機專家級的工作(散戶隨便編個小程序退散)。
位置:系統的硬體需要放在離交易所主機很近的位置上,所謂 co-location。並且得到門的准入許可證,交易指令直接發送至交易所(而不是通過券商中轉)。
符合這三點的,就可以叫做高頻交易系統。有人說你這三條沒有一條在說頻率,只能叫低延遲系統不叫高頻交易。的確,我再一次深切贊同「高頻交易」是一個很差勁的名字。但現在市面上的主流媒體,包括大部分新聞和暢銷書在談到這個話題時,說的就是這種系統,所以我在這里就不糾結字面意思了。