2012年5月20日 星期日

勒式交易策略

權證的交易策略有一種操作方法叫做勒式交易策略(其實這種交易策略跟選擇權是一樣的),今天來介紹一下這種操作的方法。 首先這種交易策略,適合在你預期你的連結標的會在未來有個大趨勢(無論是大跌或是大漲),例如總統大選,或是希臘債務 到期日等等。此時你可以買進不同履約價但是到期日一樣的認購以及認售權證,通常這邊買進的認購及認售權證會讓其 履約價跟目前現貨價都是價外的關係,這樣的買進成本會比較低。

如果履約期限到之前,連結標的如你預期的有個大趨勢,假設是大漲好了,此時你所買的認購權證會因為現貨價上漲,而讓其變成 輕度價外甚至是變成價內的關係,如此一來delta會有比較大幅度的變化,則權證價格的增長幅度就會比較大。至於原本買進的 認售權證雖然會虧錢,但是因為從價外變成深價外,delta變小,所以事實上虧損的不如你在認購權證所賺的多。

這樣的操作手法利用的是delta係數在價外到價之間非線性的成長曲線來獲利,不過這樣的操作手法看似穩賺不賠,但是事實上 只要連結標的不如你預期的有大幅度的變化,而是一個盤整的格局,則你就會同時損失認售以及認購權證的時間價值,所以也要 特別小心這種操作策略,不適合在連結標的是個長期走勢平穩的標的。

2012年4月12日 星期四

讓Perl結合Excel圖表的強大工具

Perl對於要從大量的格式化文字檔中分析出有用的資訊是非常強大的語言。
不過通常的作法也是從各種log檔案分析出另一個summary的文字檔。
如果能將分析出來的數據利用EXCEL的表格以及圖示來表示,相信是更潛顯易懂的方式。

其實要達到這個功能並不難,perl已經有熱心人士開發出一套可以寫出excel格式的library。
詳細的資訊在下列網址可以找到:
http://search.cpan.org/~jmcnamara/Spreadsheet-WriteExcel-2.37/lib/Spreadsheet/WriteExcel.pm#QUICK_START

目前工作上大量使用這種perl跟excel的搭配,我覺得非常powerful。
有這樣工作需求的同好們趕快來試試看吧!

2011年12月15日 星期四

vim 多行 操作

最近工作上常常會為了debug方便,把某些code的一大塊做註解的動作,如果code不是像c code有/**/這類的註解可以使用,這時候如果一行一行作註解效率太差了,因此查到有下列做法可以使用,特別記錄下來

1.按ESC然後將游標移到行首
2.按下Ctrl+V 之進到Visual block模式之後按下j,然後按上下鍵將要註解的行都選取起來
3.按下ctrl+i,在行首插入#字號(根據不同程式語言的規定,這邊以perl為例)
4.再按下ESC,則剛剛選取的行首都會新增#字號

參考網頁:http://usagiblog.wordpress.com/2007/11/26/multi-line-comments-in-vim/

2011年11月27日 星期日

權證 - 隱含波動度

在眾多影響權證價格的參數中,隱含波動度是一項蠻重要觀察的參數。這項參數的值事實上是將權證的價格帶入一個選擇權計價的模型當中所求出來的理論值。從其字面上我們應該可以一窺這個參數所代表的意思其實就是衡量這檔權證所連結的標的,其股價波動的情況-> 套一句財經台常說的話,就是這檔股票的股性活不活潑。

如果有一檔股票,他的價格長時間保持在一個穩定的區間內做小幅的波動,連結到這檔股票的權證其隱含波動率是較小的,如果有一檔股票的股價常常做大幅度劇烈的波動,則他的隱含波動率就會比較大,而權證的價格也會較貴。 這個原理其實不難想,因為權證事實上是由發行券商負責擔保履約的責任,當他發行權證的時候,他必然會考慮這檔股票上下波動的可能性來評估其履約價格的風險性,當風險越高的股票,他可能的損失也會比較高,因此他在發行的時候,會把這個成本一起考慮進去,也就是會把這個風險以隱含波動率的方式帶進去權證的價格計算,因此一檔的權證他的隱含波動率越高,通常價格也就比較高。

對投資者來說,也必須知道發行券商事實上在發行權證之後,仍然可以調整隱含波動率的值,一但券商調整後的隱含波動率跟發行的不一樣,就有可能導致投資者的獲利縮水,因此在選擇權證的時候,要特別注意發行的券商是否有保持穩定的隱含波動率,才不會吃了悶虧

2011年11月16日 星期三

研替心得

剛結束了研替在成功嶺的三個禮拜軍事基礎訓練,來分享一些心得給之後的學弟,以下的資料主要由我的學長aircop所整理,我在更新部分內容所成

‧可先剃好頭,不過上成功嶺那些髮婆還是會把每個人都再過一次,先理短的好處是比較不會痛
‧所有通知單上列出要攜帶的日用品,可到成功嶺上再買,當然自己帶去也行,成功嶺上賣的蠻貴的 (用全家的價錢在算)
‧可帶防蚊液 (但成功嶺上的蚊子很強,防蚊液不一定有效),到成功嶺上再買也行
‧強烈建議帶爽身粉,而且要用「嬌娃」牌的,很涼,帶大罐一點,猛撒,晚上較好入睡
‧除了通知單上列的日用品外,其他東西幾乎都要入庫列管,所以別帶什麼廢物上去,基本上是有列的都要帶,沒列的都不要帶
‧通知單上面有寫要帶肥皂盒,但實際上如果你用沐浴乳,就不用帶肥皂盒
‧通知單上寫要帶針線盒,針線盒裡面最好要同時有「黑、深藍」顏色的線,還有先學一下怎麼縫衣服,到時要縫至少五塊名條
‧通知單上寫要帶印章,可以不要帶,直接蓋手印就好
‧通知單上寫要帶拖鞋,建議是帶藍白拖,因為大部分人都穿藍白拖,耐用,內務檢查時也比較好跟別人的標齊
‧之前學長建議要帶簽字筆,不過目前簽字筆屬於違禁品(因為之前幾梯的會再床板上亂寫)
‧通知單上沒寫要帶鏡子,但建議帶個小鏡子,因為刮鬍子時要在寢室外,沒鏡子很難刮
‧帶多點零錢 (打電話用,有時出公差可以投飲料也用得到)
‧電子用品全部都列為違禁品 (包含刮鬍刀),所以除了手機外,就別帶其他電子用品上去了(手電筒也是違禁品)
‧有抽菸的,如果帶菸跟打火機上去,會全部被沒收,不會再發回
‧去時可以多帶一套便服,因為便服只能曝曬,不能送洗,萬一去時流滿身汗,放假時要穿同一套出來,但穿去的內衣褲跟襪子可送洗
‧每天洗完澡可以打電話 (有電話卡機跟零錢機都可使用,你可以選排隊人少的那邊排),但不能講太久,講完要登記,有的中隊會開放手機
‧電話卡是 IC 電話卡,可多帶幾張已經用完的,褶棉被、蚊帳時可用來「卡」出邊角
‧高中跟大學的軍訓成績單都要申請帶去,辦理役期折抵
‧要開好郵局帳戶,把帳號記下來
‧每天會內務評比跟服儀檢查,沒過的會扣點,扣滿 8 點禁假 2 小時,之後每多 2 點多禁 2 小時
‧臉盆 (上去會發) 裡不能放洗面乳,雖然洗面乳可擺在衣櫃裡,但為了方便,可以帶一罐從頭洗到腳的沐浴乳 (可到成功嶺再買)
‧所有帶上去的藥品,如果是用吃的,都要管制,所以除非有慢性病要服藥,不然就不用帶了,生病的話會帶你去看醫護所
‧帶去的錢不要入庫,因為常常會收一些費用,而且帶小鈔跟零錢就好,大鈔沒什麼用
‧研發替代役幾乎每天都在餐廳吹冷氣聽演講,非常非常無聊,最好準備一下上課無聊時可以用的東西 (例如數獨、或是小本的書,別帶厚的書)
如果有帶書,記得不要入庫,不然有帶跟沒帶一樣
‧衛生紙要帶兩包,一包一定要平板的 (內務檢查要用,一直到結訓下來都不能拆封),另一包可自己選擇平板或抽取的
‧去年有人說要帶防曬乳,但這梯是完全沒用到
‧如果有手錶,建議帶一下,雖然沒手錶的話也是可以過得很快樂
‧可以先上網找一下精神答數、成功嶺之歌、替代役之歌的歌詞,先背一下 (其實到時再背也是可以啦)
‧替代役之歌可以先上網找一下音樂,先聽幾遍唱幾遍
‧會有替代役之歌比賽,每個中隊會選出 6 個小老師編舞蹈動作,可自願,小老師常常在別人上課時可留在寢室討論編舞,還不賴
‧如果你自願做小老師,建議在上成功嶺前自己想好橋段,不過我個人覺得替歌比賽的標準每屆都差很多,有幾屆喜歡的是有創意的,有幾屆喜歡的是中規中矩不亂搞的,所以不要把替歌的榮譽假看得太重,心情會比較好
‧替代役之歌比賽還會另外選幾個美術公差,如果有美術底子,自願做美術公差也很爽
‧如果你不幸被分到打飯班或器材班,就會過得很辛苦,雖然有榮譽假,但那短短幾小時的榮譽假跟付出的辛苦不能比
‧其他的,就照通知單上面的就好了。結論是完全不操,又涼又爽,但很無聊...所以真的要好好想一下無聊坐著時要幹嘛!!!

2011年9月16日 星期五

權證 - 價格迷思

剛開始接觸權證交易的時候,常常會納悶為什麼昨天買的權證,今天連結的股票漲了,可是手上的權證卻反而下跌,然後就開始大罵券商,懷疑是不是被坑了?

其實有些概念須要先釐清,首先先確定你買的是認購還是認售權證,這點雖然看起來很蠢,但是卻是蠻多人會發生的,先確定你買的權證代碼最後沒有P這個字,才是認購權證。

釐清上述疑點,接下有一個觀念要記在心中,因為我們看到的權證價格是根據前一天最後一筆的成交價來決定的,有可能在前一天尾盤的時候,券商沒有掛單,但是有其他人掛單並且成交,而其成交價並非公式計算出來的價格,這種情況在連結標的是漲停或是跌停的時候最有可能出現。 通常這種成交價已經偏離了真正選擇權計價公式算出來的價格,當隔天開盤,券商掛出正常價格的單,並且成交了,你於前一天買進的價格瞬間就會跌到公式的價格,此時你馬上就有損失,這點是權證初心者需要特別注意的,下面舉個例子說明:

假設某天尾盤連結標的價值為60塊並且漲停鎖住(此時真正的公式價格假設是0.9塊),此時券商通常不會掛單以降低風險(為什麼券商會有風險之後會在專文說明),但是市場上有人掛1塊賣單,而又有人認為明天還會去續漲所以買進這張1塊的權證,此時成交價就為1塊錢。

隔天開盤之後,假設以平盤開出,這時候券商會掛出的單就是0.9塊錢(公式價格),如果有人成交了,此時成交價就變成0.9塊,你會發現連結標的明明就是平盤,可是權證價格就會顯示 (0.9-1)/1=-10%,也就是跌了十趴,這樣發現了嗎? 很多時候權證價格的漲跌會跟連結標的漲跌脫鉤,就會是這種原因,因此在下單的時候,必須注意是否買到的不是券商所掛出來的單,以免承受不必要的損失

2011年8月30日 星期二

權證- 歐式權證以及美式權證

當我們開始交易權證的時候,還需要注意你所購買的是屬於歐式權證或是美式權證,以免到時候想要履行權利的時候,發現卻不如自己所想像。

歐式權證:這種類型的權證只能在權證到期的當天,才能向發行的券商要求執行買進或是賣出的權利。

美式權證:美式的權證則可以在權證到期前的任何一天,都可以向發行的券商要求執行權證上面所載明的權利。

至於有人覺得要履行這些權證的權利還要真的進行股票交割的動作很麻煩也沒關係,目前大部分的券商都可以直接將獲利折成現金,而不需要進行股票的交易,算是相當方便的。

2011年8月22日 星期一

權證 - Delta係數

當我們要開始進行權證交易的時候,必須注意一些比較特別的係數,除了之前所提到價內價外的觀念,還有一個是所謂的Delta的概念。Delta定義成當連結的股票上漲(下跌)一塊,認購(認售)權證會相對漲多少元。這個係數跟權證處於價內價外,還有其執行比例(一張權證可以履行多少張現貨股票的權力)等等都有關係。

一般來說,Delta會隨著權證從價外一路到深價內,越來越接近1(假設執行比例是1:1)。另外當權證處於深價外的時候,往往連結的標的漲幅很大(跌幅很大),可是權證價格卻變動很小,這是因為深價外的時候,其Delta係數是相對小的,因此權證的漲幅就跟不上股票標的漲幅

2011年8月14日 星期日

初談 linux driver

目前嵌入式系統的工程師有蠻多時候需要撰寫所謂特定device或是chip的driver,這邊先就一些基本的觀念做一點解釋。以linux來說,其程式分成兩個部分,一種運行於kernel,這種程式擁有控制硬體暫存器的權限,因此這邊的程式如果有bug,因為權限太大,很容易造成系統的記憶體空間發生錯誤,而導致整個系統crash。另外一種是運行在user space的程式,這種程式沒有權利直接去存取那些可以直接控制硬體的暫存器,因此其必須利用由linux定義出來,介於user space跟kernel space的介面,將控制的request由這個介面傳給kernel space的driver,用這個driver來將從硬體得到的值再傳回給user space的程式,完成一次對硬體的request。

linux為了統一這個介於中間層的interface,其定義了一些固定的功能,寫driver的時候只要去覆寫這些固定的function,則上層(user-space)可以使用類似的介面來控制許多不同種類的device。

linux將每個device都視為一個檔案,對其做資料上的操作,就很像對檔案做開檔讀檔以及寫入的功能。如果有一些hardware-depedent的一些功能,則可以利用(ioctl+自訂command)的方式來實現。

例如:假設有一個gpio的driver,並且也已經在kernel新增一個gpio(General Purpose I/O)的device,則我們如果要對其操作,我們一樣要先利用open的函數將device打開(f_op=open("/dev/gpio","參數")),然後此時如果成功開啟了device,其會回傳一個file operator,這可以視為要對這個device進行操作的代碼,則我們要對這gpio進行一些特定功能(例如控制值為邏輯0或是邏輯1,或是控制此GPIO為輸入或是輸出)的時候,我們只要使用ioctl的system call,將事先定義好的command以及這個file operator傳進去,我們就可以對device進行這些特定的操作。

基本上在linux撰寫driver,主要就是在kernal層中對一些硬體相關的暫存器做控制,來達到傳輸資料以及控制的目的,不過因為linux有規定好user space跟kernel space的介面規則,因此kernel層的driver還需要根據linux規定的driver框架,進行一些函數的覆寫,大致上這就是linux driver的初步觀念,比較細節的部分,留待以後說明。

2011年8月12日 星期五

Verilog - 好的coding style

Verilog人人都可以寫,但是要記得一件很重要的事情,verilog必須要有好的coding style,程式碼才能讓一些邏輯分析以及合成的EDA Tool(Design compiler etc.)合出自己如自己所預期的電路,否則常常會合出一些行為跟自己所預期不一樣的電路。

首先最重要的觀念就是,要將負責組合電路的block跟負責時序電路的block分開寫。
在組合電路中使用blocking的敘述,而在時序電路則使用non-blocking的敘述。

舉個例子:
通常數位電路的設計,主要就是在設計一個FSM(finite-state-machine),讓電路根據現在處於什麼state以及input為何來做控制以及轉state的功能。

儲存state的部分屬於時序電路的範疇,因為其有記憶的特性,因此我們把它用non-blocking的方式來描述:

reg state;
reg n_state; //next_state

always@(posedge clk)begin
state<=n_state;
end

這就會在clock來到上升緣(resing edge)的時候,將n_state的值傳給state。

但是state改變之後,他仍然必須根據一些input來決定下個state為何,這部分屬於邏輯判斷的部分,因此用組合電路來實現(blocking敘述):

input control; //input signal
always @ (state) begin
if (control)
n_state=S0 ; //S0:state 0
else
n_state=S1 ; //S1:state 1
end

如此一來,我們就將負責時序電路(flip-flop)以及組合電路的行為分成兩個不同部分來撰寫,這種寫法是一個比較好的coding style,在合成電路的時候比較不會出錯。

Verilog - blocking & non - blocking

在我研替的面試經驗中,因為投的是數位IC的工程師,因此所謂verilog的blocking & non-blocking的觀念,幾乎是每一家公司的必考題,因此我以我的見解做一個解釋,如有錯誤歡迎指正

顧名思義,所謂的blocking就是verilog大括號所刮起來的敘述中,每個敘述是必須依序執行的,例如:

always @(a or b) begin
a=#1 b;
c=#2 a;
end

這邊在always使用的是=的operator,也就是blocking的敘述。這段程式碼模擬的時候,a會在b的值變動後的一個時間單位被賦予b的值,而c會在a被賦予b的值之後的兩個時間單位,被賦予a的值。也就是說c會在b的值變動後的三個時間單位才會被賦予b的值。這是因為blocking的敘述,將每個敘述都視為要依序執行的,因此必須等前一個敘述完成之後才會執行下一個敘述。

那如果使用non-blocking的operator(<=),程式改寫如下
always@(a or b)begin
a<=#1 b;
c<=#2 a;
end

這段程式碼,會在b的值變動的一個時間單位之後,將b的值賦予給a,不過在b的值變動的第二個時間單位之後,a的值就會傳給了c,而不會到第(1+2)個時間單位過後才給值。看得出來嗎? 差別就在使用non-blocing的敘述,括號內的所有敘述都是"同時"執行的,不會有先後關係。這主要是為了硬體的特性,許多資工背景的同學,這地方就會比較難理解,因為軟體主要都是依序執行的,這種平行的觀念比較常在硬體出現。

勒式交易策略

權證的交易策略有一種操作方法叫做勒式交易策略(其實這種交易策略跟選擇權是一樣的),今天來介紹一下這種操作的方法。 首先這種交易策略,適合在你 預期你的連結標的會在未來有個大趨勢 (無論是大跌或是大漲),例如總統大選,或是希臘債務 到期日等等。此時你可以買進不同履約價但是到期日一...