1. 波神規律的神奇的自然規律
自然界和人類社會中,充滿了大大小小的規律。人類從混沌之中走來,最終成為世界的主宰,依靠的就是不斷發現規律,掌握規律,利用規律。
中國古老的傳統文化,為我們研究分析金融市場規律,奠定了雄厚的理論基礎。
老子的《道德經》把「道」作為哲學的最高范疇提出,視它為世界萬物的總根源,是萬物運動變化的規律,認為任何事物,每個階段的發展都由「道」駕馭、規范、控制著,從變化的角度來說,它就是萬物發展的規律。
「道」用數字來表示其規律時,就是:道生一、一生二、二生三、三生萬物,實際上它構成了一個完整的萬事萬物生化的過程。
巧合的是: 世界著名的數字大師斐波南希,在13世紀發現的一系列神奇數字系列,即1、2、3、5、8、13、21、34、55 ……直至無限。這套神奇數字正印證了中國老子「道生一、一生二、二生三、三生萬物」數字理論。表面看來,上述數字系列很簡單,其內部卻隱藏著無窮的奧秘。
另外,中國的「易經」「陰陽學說」以及「五行學說」也從另一角度概括了事物的發展規律,我們如果將「五行學說」用幾何圖形表示,對於我們研究今天經濟運行規律也是非常有意義的
1、(五行星圖)圖中最外圍大五角的箭頭代表相生,圖中的第二層五角星的箭頭代表相剋的關系,按「五行學說」,這個相生、相剋的關系構成了世界萬物的本質。
2、第二層的五角星里邊又包含一個同樣的五角星,向裡面無窮盡,當然向外也可以無窮盡,正是:其小無內,其大無外。
3、其實「天理循環」所啟示世人的,正是黃金比率。從宇宙各大行星運行周期,可以看到以下的黃金比率關系:
(1) 水星周期約是地球周期的0.236。(2) 金星周期約是地球周期的0.618。
(3) 火星周期約是地球周期的2倍。
(4) 水星周期約為火星周期的0.382。
(5) 水星周期約為火星周期的八分之一。
(6) 木星周期是618星期。
(7) 火星周期的6.18倍約為木星周期。
(8) 土星周期的0.382倍接近木星周期。
(9) 土星周期接近天王星周期的0.382,更接近八分之一的平方根倍數。
(10) 天王星周期約為海王星周期的50%。
相當奇妙,上述的比率亦為金融市場常見的波動比率。由此可見,應用黃金比率在金融市場的走勢上分析,是最接近大自然規律的一套分析方法,我們有理由相信,市場的規律亦由此而生。
人類生長在這個無數個大小規律的世界中,也時時刻刻的受到自然界各種規律的制約,包括人的勞作、休息、心理、情緒等。如人類的生理周期也如同大海潮漲潮落一樣,較明顯的一點,如:青年女性28天一循環的生理小潮。而由帶有這多規律的個人組成的人類社會當然也是有規律的。
2. 如何通過雪球查詢股票之前的變動狀況
一. 雪球公司介紹
雪球 聰明的投資者都在這里。
web 1.0:新聞資訊,股價信息,K線圖
web 2.0:SNS 訂閱,分享,聊天
web 3.0:移動 APP,交易閉環
雪球現在員工數還不到100,其中技術人員佔一半。去年9月C輪融資4kw刀。我們現在的技術棧由下列組件組成:Java,Scala,Akka,Finagle,Nodejs,Docker ,Hadoop。我們當前是租用IDC機房自建私有雲,正在往「公私混合雲」方向發展。
在雪球上,用戶可以獲取滬深港美2w+股票的新聞信息,股價變化情況,也可以獲取債券,期貨,基金,比特幣,信託,理財,私募等等理財產品的各類信息,也可以關注雪球用戶建立的百萬組合,訂閱它們的實時調倉信息,還可以關注雪球大V。雪球當前有百萬日活躍用戶,每天有4億的API調用。App Store 財務免費榜第 18 名。歷史上曾排到財務第二,總免費榜第 19。
二. 雪球當前總體架構
作為一個典型的移動互聯網創業公司,雪球的總體架構也是非常典型的設計:
最上層是三個端:web端,android端和iOS端。流量比例大約為 2:4:4 。web3.0 的交易功能,在 web 端並不提供。
接入層以及下面的幾個層,都在我們的自建機房內部。雪球當前只部署了一個機房,還屬於單機房時代。正在進行「私有雲+公有雲混合部署」方案推進過程中。
我們當前使用 nodejs 作為 web 端模板引擎。nodejs 模塊與android 和 ios 的 app 模塊一起屬於大前端團隊負責。
再往下是位於 nginx 後面的 api 模塊。跟 linkedin 的 leo 和微博的 v4 一樣,雪球也有一個遺留的大一統系統,名字就叫 snowball 。最初,所有的邏輯都在 snowball 中實現的。後來慢慢的拆出去了很多 rpc 服務,再後來慢慢的拆出去了一些 http api 做成了獨立業務,但即便如此,snowball 仍然是雪球系統中最大的一個部署單元。
在需要性能的地方,我們使用 netty 搭建了一些獨立的介面,比如 quoto server,是用來提供開盤期間每秒一次的股價查詢服務,單機 qps 5w+,這個一會再細說;而 IM 服務,起初設計里是用來提供聊天服務,而現在,它最大的用途是提供一個可靠的 push 通道,提供 5w/s 的消息下發容量,這個也一會再細說。
雪球的服務化拆分及治理採用 twitter 開源的 finagle rpc 框架,並在上面進行了一些二次開發和定製。定製的功能主要集中在 access log 增強,和 fail fast,fail over 策略及降級開關等。 finagle 的實現比較復雜,debug 和二次開發的門檻較高,團隊內部對此也進行了一些討論。
雪球的業務比較復雜,在服務層中,大致可以分為幾類:第一類是web1.0,2.0 及基礎服務,我們稱為社區,包括用戶,帖子,新聞,股價,搜索等等,類比對象就是新浪財經門戶+微博;第二類是組合及推薦,主要提供股票投資策略的展示和建議,類比對象是美國的motif;第三類是通道,類似股市中的「支付寶」,接入多家券商,提供瞬間開戶,一鍵下單等等各種方便操作的功能。
雪球的業務實現中,包含很多非同步計算邏輯,比如搜索建索引,比如股票漲跌停發通知,比如組合收益計算等等,為此,我們設計了一個獨立的 Thread/Task 模塊,方便管理所有的後台計算任務。但隨著這些 task 越來越多,邏輯差異越來越大,一個統一的模塊並不是總是最佳的方案,所以,我們又把它拆成了兩大類:流式的,和批量式的。
雪球的推薦體系包括組合推薦「買什麼」和個性化推薦。我們最近正在重新梳理我們的大數據體系,這個感興趣的話可以單聊。
最下面是基礎設施層。雪球基礎設施層包括:redis,mysql,mq,zk,hdfs,以及容器 docker。
線上服務之外,我們的開發及後台設施也很典型:gitlab開發,jenkins打包,zabbix 監控系統向 openfalcon 遷移,redimine向confluence遷移,jira,以及內部開發的 skiing 後台管理系統。
** 三. 雪球架構優化歷程**
首先描述一下標題中的「股市動盪」定語修飾詞吧:
上證指數從年初的3000點半年時間漲到了5000多,6月12號達到最高點5200點,然後就急轉直下,最大單日跌幅 8.48%,一路跌回4000點以下。最近一周都在3900多徘徊。
3月最後一周,A股開戶 166萬戶,超過歷史最高紀錄 2007年5月第二周165萬戶。
4月份,證監會宣布A股支持單用戶開設多賬戶。
6月底,證金公司代表國家隊入場救市。
7月份,證監會宣布嚴打場外配資。
中國好聲音廣告第一晚,帶來超過平時峰值200倍的注冊量
挑戰:小 VS 大:
小:小公司的體量,團隊小,機器規模小
大:堪比大公司的業務線數量,業務復雜度,瞬間峰值沖擊
雪球的業務線 = 1個新浪財經 + 1 個微博 + 1 個 motif + 1 個大智慧/同花順。由於基數小,API調用瞬間峰值大約為平時峰值的 30+ 倍。
挑戰:快速增長,移動互聯網 + 金融,風口,A股大盤劇烈波動。
首先,在app端,在我們核心業務從 web2.0 sns 向 3.0 移動交易閉環進化的過程中,我們開發了一個自己的 hybrid 框架:本地原生框架,加離線 h5 頁面,以此來支撐我們的快速業務迭代。當前,雪球前端可以做到 2 周一個版本,且同時並行推進 3 個版本:一個在 app store 等待審核上線,一個在內測或公測,一個在開發。我們的前端架構師孟祥宇在今年的 wot 上有一個關於這方面的詳細分享,有興趣的可以稍後再深入了解。
雪球App實踐—構建靈活、可靠的Hybrid框架 http://wot.51cto.com/2015mobile/ http://down.51cto.com/data/2080769
另外,為了保障服務的可用性,我們做了一系列的「端到端服務質量監控」。感興趣的可以搜索我今年4月份在環信SM meetup上做的分享《移動時代端到端的穩定性保障》。其中在 app 端,我們採用了一種代價最小的數據傳輸方案:對用戶的網路流量,電池等額外消耗幾乎為0
每個請求里帶上前一個請求的結果
succ or fail : 1 char
失敗原因:0 - 1 char
請求介面編號: 1 char
請求耗時:2 - 3 char
其它:網路制式,etc
炒股的人大多都會盯盤:即在開盤期間,開著一個web頁面或者app,實時的看股價的上下跳動。說到「實時」,美股港股當前都是流式的數據推送,但國內的A股,基本上都是每隔一段時間給出一份系統中所有股票現價的一個快照。這個時間間隔,理論上是3秒,實際上一般都在5秒左右。 交了錢簽了合同,雪球作為合作方就可以從交易所下屬的數據公司那裡拿到數據了,然後提供給自己的用戶使用。
剛才介紹總體架構圖的時候有提到 quote server ,說到這是需要性能的地方。
業務場景是這樣的,雪球上個人主頁,開盤期間,每秒輪詢一次當前用戶關注的股票價格變動情況。在內部,所有的組合收益計算,每隔一段時間需要獲取一下當前所有股票的實時價格。起初同時在線用戶不多,這個介面就是一個部署在 snowball 中的普通介面,股價信息被實時寫入 redis ,讀取的時候就從 redis 中讀。後來,A股大漲,snowball 抗不住了。於是我們就做了一個典型的優化:獨立 server + 本地內存存儲。開盤期間每次數據更新後,數據接收組件主動去更新 quote server 內存中的數據。 後續進一步優化方案是將這個介面以及相關的處理邏輯都遷移到公有雲上去。
對於那些不盯盤的人,最實用的功能就是股價提醒了。在雪球上,你除了可以關注用戶,還可以關注股票。如果你關注的某隻股票漲了或跌了,我們都可以非常及時的通知你。雪球上熱門股票擁有超過 50w 粉絲(招商銀行,蘇寧雲商)粉絲可以設置:當這支股票漲幅或跌幅超過 x%(默認7%)時提醒我。曾經連續3天,每天超過1000股跌停,證監會開了一個會,於是接下來2天超過1000股漲停
原來做法:
股票漲(跌)x%,掃一遍粉絲列表,過濾出所有符合條件的粉絲,推送消息
新做法:
預先建立索引,開盤期間載入內存
1%:uid1,uid2
2%:uid3,uid4,uid5
3%:uid6
問題:有時候嫌太及時了:頻繁跌停,打開跌停,再跌停,再打開。。。的時候
內部線上記錄:
4台機器。
單條消息延時 99% 小於 30秒。
下一步優化目標:99% 小於 10 秒
IM 系統最初的設計目標是為雪球上的用戶提供一個聊天的功能:
送達率第一
雪球IM:Netty + 自定義網路協議
Akka : 每個在線client一個actor
推模式:client 在線情況下使用推模式
多端同步:單賬號多端可登錄,並保持各種狀態同步
移動互聯網時代,除了微信qq以外的所有IM,都轉型成了推送通道,核心指標變成了瞬間峰值性能。原有架構很多地方都不太合適了。
優化:
分配更多資源:推送賬號actor池
精簡業務邏輯:重復消息只存id,實時提醒內容不推歷史設備,不更新非活躍設備的session列表等等
本地緩存:拉黑等無法精簡的業務邏輯遷移到本地緩存
優化代碼:非同步加密存儲,去除不合理的 akka 使用
akka這個解釋一下:akka 有一個自己的 log adapter,內部使用一個 actor 來處理所有的 log event stream 。當瞬間峰值到來的時候,這個 event stream 一下子就堵了上百萬條 log ,導致 gc 顛簸非常嚴重。最後的解決辦法是,繞過 akka 的 log adapter,直接使用 logback 的 appender
線上記錄:5w/s (主動限速)的推送持續 3 分鍾,p99 性能指標無明顯變化
7月10號我們在中國好聲音上做了3期廣告。在廣告播出之前,我們針對廣告可能帶來的對系統的沖擊進行了壓力測試,主要是新用戶注冊模塊,當時預估廣告播出期間2小時新注冊100萬
壓測發現 DB 成為瓶頸:
昵稱檢測 cache miss > 40%
昵稱禁用詞 where like 模糊查詢
手機號是否注冊 cache miss > 80%
注冊新用戶:5 insert
優化:
redis store:昵稱,手機號
本地存儲:昵稱禁用詞
業務流程優化:DB insert 操作同步改非同步
下一步優化計劃:
將 sns 系統中所有的上行操作都改成類似的非同步模式
介面調用時中只更新緩存,而且主動設置5分鍾過期,然後寫一個消息到 mq 隊列,隊列處理程序拿到消息再做其它耗時操作。
為了支持失敗重試,需要將主要的資源操作步驟都做成冪等。
前置模塊HA:
合作方合規要求:業務單元部署到合作方內網,用戶的敏感數據不允許離開進程內存
業務本身要求:業務單元本身為有狀態服務,業務單元高可用
解決方案:
使用 Hazelcast In-Memory Data Grid 的 replication map 在多個 jvm 實例之間做數據同步。
java 啟動參數加上 -XX:+DisableAttachMechanism -XX:-UsePerfData,禁止 jstack,jmap 等等 jdk 工具連接
關於前置模塊,其實還有很多很奇葩的故事,鑒於時間關系,這里就不展開講了。以後有機會可以當笑話給大家講。
組合凈值計算性能優化:
一支股票可能在超過20萬個組合里(南車北車中車,暴風科技)
離線計算,存儲計算後的結果
股價3秒變一次,涉及到這支股票的所有組合理論上也需要每 3 秒重新計算一次
大家可能會問,為什麼不用戶請求時,實時計算呢?這是因為「組合凈值」中還包括分紅送配,分股,送股,拆股,合股,現金,紅利等等,業務太過復雜,開發初期經常需要調整計算邏輯,所以就設計成後台離線計算模式了。當前正在改造,將分紅送配邏輯做成離線計算,股價組成的凈值實時計算。介面請求是,將實時計算部分和離線計算部分合並成最終結果。
實際上,我們的計算邏輯是比較低效的:循環遍歷所有的組合,對每個組合,獲取所有的價值數據,然後計算。完成一遍循環後,立即開始下一輪循環。
優化:
分級:活躍用戶的活躍組合,其它組合。
批量:拉取當前所有股票的現價到 JVM 內存里,這一輪的所有組合計算都用這一份股價快照。
關於這個話題的更詳細內容,感興趣的可以參考雪球組合業務總監張岩楓在今年的 arch summit 深圳大會上的分享:構建高可用的雪球投資組合系統技術實踐 http://sz2015.archsummit.com/speakers/201825
最後,我們還做了一些通用的架構和性能優化,包括jdk升級到8,開發了一個基於 zookeeper 的 config center 和開關降級系統
四. 聊聊關於架構優化的一些總結和感想
在各種場合經常聽說的架構優化,一般都是優化某一個具體的業務模塊,將性能優化到極致。而在雪球,我們做的架構優化更多的是從問題出發,解決實際問題,解決到可以接受的程度即可。可能大家看起來會覺得很凌亂,而且每個事情單獨拎出來好像都不是什麼大事。
我們在對一個大服務做架構優化時,一般是往深入的本質進行挖掘;當我們面對一堆架構各異的小服務時,「架構優化」的含義其實是有一些不一樣的。大部分時候,我們並不需要(也沒有辦法)深入到小服務的最底層進行優化,而是去掉或者優化原來明顯不合理的地方就可以了。
在快速迭代的創業公司,我們可能不會針對某一個服務做很完善的架構設計和代碼實現,當出現各種問題時,也不會去追求極致的優化,而是以解決瓶頸問題為先。
即使我們經歷過一回將 snowball 拆分服務化的過程,但當我們重新上一個新的業務時,我們依然選擇將它做成一個大一統的服務。只是這一次,我們會提前定義好每個模塊的 service 介面,為以後可能的服務化鋪好路。
在創業公司里,重寫是不能接受的;大的重構,從時間和人力投入上看,一般也是無法承擔的。而「裱糊匠」式做法,哪裡有性能問題就加機器,加緩存,加資料庫,有可用性問題就加重試,加log,出故障就加流程,加測試,這也不是雪球團隊工作方式。我們一般都採用最小改動的方式,即,准確定義問題,定位問題根源,找到問題本質,制定最佳方案,以最小的改動代價,將問題解決到可接受的范圍內。
我們現在正在所有的地方強推3個數據指標:qps,p99,error rate。每個技術人員對自己負責的服務,一定要有最基本的數據指標意識。數字,是發現問題,定位根源,找到本質的最重要的依賴條件。沒有之一。
我們的原則:保持技術棧的一致性和簡單性,有節制的嘗試新技術,保持所有線上服務依賴的技術可控,簡單來說,能 hold 住。
能用cache的地方絕不用db,能非同步的地方,絕不同步。俗稱的:吃一塹,長一智。
特事特辦:業務在發展,需求在變化,實現方式也需要跟著變化。簡單的來說:遺留系統的優化,最佳方案就是砍需求,呵呵。
3. 波神規律的此公式有兩大作用
1、○―⑦構成一個較完整的循環波段
在這個完整的循環波段過程中,行情運行到②、③、⑤的時間目標位,都會做波段性的回調或反彈,其中目標③的回調或反彈概率一般佔85%以上,其次是②和⑤的目標位,我們可以抓住這種運行規律,輕松而有節奏地達到真正意義上的「低吸高拋」。
2、此計算公式還可以用於計算價格之窗即行情高低點轉折的時間。以及回調和反彈的幅度。
「波神規律」的應用從小的方面講,可使股票、期貨、外匯等各種市場的參與者明確預知市場發展趨勢及「上漲波段的高點和下跌波段的低點」,做到真正意義上的「低吸高拋」,避免風險,增加收益。即使在股市的低迷時期,投資者還是可以在「波神規律」的指導下做波段操作,而不只是等待、觀望,從而對激活市場,慢慢使市場走出低迷形成良性循環。
從大的方面講,通過「波神規律」很好地把握金融市場的運行趨勢和每個波段的高點、低點,從而可輔助金融機構在國際金融市場的投資,避免重大方向性失誤。
例如,成熟的資本國家英國,政府在市場最低時間時拋出400噸黃金的悲劇事例,如右圖(圖中黑線區域1999年7月-2002年3月)。
因此正確使用「波神規律」可以直接避免股票、期貨、外匯等各種金融投資風險,增加投資收益,為投資者創造較好的收益。
4. 重生1990之官運亨通的小說目錄
第一章 蘇聯的紅旗還能打多久?
第二章 一份稿子引發的慘案
第三章 扮豬吃老虎
第四章 相逢不如偶遇
第五章 夢中試題知多少
第六章 中考吊瓶作戰計劃
第七章 恰同學年少
第八章 勇敢說我愛你
第九章 女孩碰見蛇
第十章 動情一吻
第十一章 站在歷史的高度
第十二章 女孩的心思你別猜
第十三章 市直機關圍棋賽
第十四章 乘勝前進
第十五章 小蘿莉的感謝
第十六章 決定冠軍的關鍵一戰
第十七章 強弩之末
第十八章 奇跡,大翻盤術
第十九章 心動
第二十章 張岩與葛亮不得入
第二十一章 知大勢者得天下
第二十二章 扶貧宴
第二十三章 拜師
第二十四章 小試牛刀
第二十五章 笑看風雲變換
第二十六章 鐵漢的選擇 上不上?
第二十七章 政治風暴 求收藏推薦
第二十八章 紅星廠的現狀
第二十九章 趕鴨子上架
第三十章 籌劃
第三十一章 紅旗超市
第三十三章 生財有道
第三十四章 永遠第一
第三十五章 重任壓肩
第三十六章 錯位造成的悲劇
第三十七章 碩鼠 求收藏推薦票
第三十八章 紅梅廠的新生
第三十九章 真心感動
第四十章 在商言商
第四十一章 張岩的志向
第四十二章 父子談心
第四十三章 目標正廳
第四十四章 一塊語音卡就可以解決
第四十五章 金州來客 求收藏
第四十五章 期貨異地交易系統
第四十六章 賣當牛連鎖店
第四十七章 進步最快新人獎
第四十八章 入主紅星廠
第四十九章 日本狗滾出去
第五十章 真英雄
第五十一章 沒有錢萬萬不能
第五十二章 猛龍過江
第五十三章 初戰告捷
5. 華信期貨股份有限公司怎麼樣
簡介: 本公司經中國證監會批准(期貨經紀業務許可證號碼:30590000),成立於1993年4月,是全國最早成立的大型期貨公司之一。2008-01-16公司更名由"河南萬達期貨經紀有限公司"更名為"萬達期貨有限公司"。公司營業地址:河南鄭州市鄭東新區商務內環路27號未來國際三號樓三層,注冊資本6600萬元人民幣,主營商品期貨經紀業務和金融期貨經紀業務。公司是國內三家期貨交易所的全權會員,目前已經申請國內首家金融期貨交易所——中國金融期貨交易所首批交易結算會員資格。 2013年9月27日,公司名稱由"萬達期貨有限公司"變更為"萬達期貨股份有限公司"。 2015年9月1日,公司名稱由"萬達期貨股份有限公司"變更為"華信萬達期貨股份有限公司"。 2017年5月9日,華信萬達期貨股份有限公司更名為華信期貨股份有限公司。
法定代表人:張岩
成立時間:1993-04-08
注冊資本:183030.7304萬人民幣
工商注冊號:410000100011597
企業類型:其他股份有限公司(非上市)
公司地址:鄭州市鄭東新區商務內環路27號樓1單元3層01號、2單元3層02號