python

標籤:python

【七年間短炒騰訊52次勝率達76.92%的方法】

潮流特區
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威) ・2024-09-26

【七年間短炒騰訊52次勝率達76.92%的方法】 在筆者Patreon 每星期會定期有一些Trading View的語法教學。在今年6月13日Patreon的文章中便講解了「七年間短炒騰訊52次勝率達76.92%」的方法。 若你由2017年1月3日開始買入騰訊並一直持有到今年6月13日,這7年間回報可達到114.57%,即使只買入10萬港元,大約能獲利114570港元。但對很多人來說這根本不可能的。例如在2022年也有很多機構多次增持騰訊,但騰訊股價在低位徘徊不前,到了2023年初便沽貨離場。 要長期持有一隻股票真的要很有「耐性」,這點真的並非每個人都做到,巴菲特被視為大師,最大原因是他真的大部份時間也「坐得穩」。筆者今天並非要教長期持有股票的好處,既然我們沒有辨法也沒有能力長期持有一隻股票,透過短炒又能否有較好的回報? 文章中介紹的就是專用作炒騰訊的方法。若運用30分鐘圖表,由2017年1月3日至今的回報有78.22%,同樣投入10萬港元,回報約78222.6港元,期間交易了52次,獲利的有40次,勝率大約76.92%,平均每次交易持倉時間約413支bar。 若用30分鐘圖,平均持倉時間大約1個月左右,這樣應更合符人性,因為若要持倉長達七年,連很多專家都做不到,但一般散戶要持倉1個月較容易處理。(pinescript 代碼在patreon內容可找到) 筆者patreon: https://www.patreon.com/quantshk

為何Python這麼熱門?

潮流特區
MacauYeah ・2024-08-27

在資料處理、資料科學領域,什麼是最近的AI模型,Python都是做這些事的熱門選擇。對於以前從未用過Python來處理業務的筆者來講,實在不懂為何Python會那麼大熱。不過最近,筆者實戰過後,真心覺得它是提高生產力的重要工具,而且並不限於資料科學上面,一些簡單的腳本操作也是很有優勢的。 筆者前述有討論過 型別對程式語言的重要性,到現時這一刻,筆者都會覺得【型別】是有助於長期的程式開發。而Python這個語言,大部份人都會介紹它是動態語言,可以使用弱型別,然後,就沒有其他講法了。動態弱型別,筆者一直都不認為它的根本上的原因。就像Javascript一樣,它亦發展出類靜態強型別的Typescript版本,而且它亦不因此而被人棄用。所以Python的強大,動態語言並不一最重要的原因,它也可以模疑寫出有規有距的type hinting。 或者用另一個方向問,大家覺得 Excel / SpreadSheet 好用嗎?它們可以很簡易地做出資料計算、篩選。而且可以一邊做,一邊調整公式。例如要大家做一個陣列的總和,大家會想打開一個Javascript,初始化陣列的每個數字,然後寫個For迴圈去計算總和嗎?還是打開 Excel / SpreadSheet,打下一欄或一列的數字,然後叫出Sum函數?筆者一定會選擇後者,不單止因為寫函數比較方便,那怕之後要調整數字,也比較方便。 大家有感受到差異嗎?筆者想表達的是,在操作 Excel / SpreadSheet 我們並不是整個程式重新執行一次,我們是修改完一部份,那上看到結果。但傳統的語言,例如C、Java、那怕是Javascript,我們都難以局部地更新或執行特定某一個區塊。那怕是現在我們有hot reload,但其實我們編寫的思維,都是讓我們完整執行起一個頁面,再人手輸入,看結果。如果我們只想運行某個單一Function函數,我們只能寫test case測試,但寫test case又是一個很大的入門門檻。 但大家如果看看Python,在古早的年代,Python已經有Python shell,那就像是Linux Shell或Window CMD一樣,可以一邊寫腳本,一邊看結果。寫了10行的程式,發現在第10行引用第5行的部份有問題,修正並執行第5行後,就可以回來馬上重跑第10行的語句,就馬上有結果了。第6至9行,因為沒有關聯性,就不需要逐一重新執行,那是多麼的方便阿。道理上,我們若沒有完整執行整個程式,可能還是有一些盲點,開發重要的,需要長期維護的程式,還是要像傳統一樣,有test case,有程式進入點,整個運行。但對於臨時性的操作,看看效果,我們實在無必要寫一個原整程式。 舉個例子,假如我們臨時有需要,要取得某個政府網站的即時數據,例如澳門的停車場資訊,空位的上下限是多少,我們絕對可以用python寫幾行就取得結果,然後順便做個資料運算。我們沒有必要很嚴僅地為考慮不同數據的出現情況,我們什至可以hard code - 硬編碼地計算某個Array的元素。直到突然有一天,這個操作變得恆常化,我們還是有條件把之前的python程式碼,改寫成一個規規矩矩的完整腳本,包括異常處理,函數複用。(其實Javascript在改用 NodeJs 作為引擎後,我們還是可以經過 Node.js REPL,來做互動操作,只是Python Shell出現得更早,也是官方支援的功能。) Python這個臨時操作的便利,對於資訊爆炸的年代來講,實在很幫得上忙。再加上現在除了Python Shell以前,還有Jupter Notebook,讓大家可以在Web頁面上,執行像Python Shell的互動操作,對於修過特定區域的程式碼,就更加方便。這些便利,都是不是因為動態語言來創造的優勢,而是實實在在的Coding Anywhere。