Python 理財程式小技巧 – 超重要的 Python 推薦命名習慣

一、前言

命名習慣非常重要!雖說 Python 沒有嚴謹到令人髮指的程度,但為了不要一秒惹怒共事的工程師,筆者這裡強烈建議因為理財才開始學習寫程式的初學者,養成良好的習慣,從最基礎但很重要的命名開始。

再次提醒,這裡為了讓初學者能快速理解,文章的用詞不一定足夠嚴謹,也參雜了一些來自個人經驗的描述。追求教科書式嚴謹定義的讀者還請自行翻閱教科書!

立即訂閱電子報,掌握最新資訊!

    電子郵件

    有興趣的主題
    量化交易金融知識台灣股市國內期貨海外期貨虛擬貨幣

    有興趣的量化交易軟體/平台
    不清楚MultiChartsTradingViewPythonXQMT4MT5

    還有什麼詢問的?

    好富投 1920x400
    好富投 978x258

    點我了解更多資訊


    二、class 類別命名

    在 Python,依照筆者目前與工程師共事的經驗,class 命名一般是習慣用大駝峰式命名(Upper Case Camel)。大駝峰式是把每個字首大寫、其餘小寫的寫法,例如 UpperCaseCamel。

    此外,類別名稱會習慣用名詞,像 Java 一樣當作「物件」,而這個傢伙(類別)懂得做許多定義好的事情(屬性、函數等)。

    以下為一個簡單範例,類別名稱為 ExchangeAccount 非常簡單明瞭,就是交易所帳戶,命名規則為大駝峰式。

    帳戶餘額 balance 有 10,000 元,但是沒有股票代碼為 2330 的持倉部位。這個帳戶的密碼是 12341234。另外,它還有一個函數,存錢的時候可以呼叫,把存入的錢加到餘額 balance 上。

    class ExchangeAccount:
        def __init__(self):
            self.balance = 10000
            self.position = {"2330":0}
            self.password = “12341234”
        def deposit(self, amount: float):
            self.balance += amount

    Py 101209161710
    Py 101209161711

    三、def 函數命名

    與 class 類別不同,Python 的函數命名習慣用蛇形命名(Snake Case),也就是所有字母都用小寫,並且以半形底線做區隔。並且建議以動詞作為開頭。

    例如,我們接著上面的例子,設計一個函數 check_password,用來確認密碼是否輸入正確:

    class ExchangeAccount:
        def __init__(self):
            self.balance = 10000
            self.position = {"2330":0}
            self.password = “12341234”
        def deposit(self, amount: float):
            self.balance += amount    
        def check_password(self, pw):
            return True if pw == self.password else False

    三、變數命名

    Python 變數命名一般也是建議用蛇形命名。

    四、常數命名

    一般來說,Python 中表達為常數的變數,會使用「全部大寫」的蛇形命名。以上方的範例來說,我們可能會想要再定義一個變數來代表交易手續費率。那我們就可以寫成:

    FEE_RATE = 0.001425

    如果各位讀者用的是 VS Code 之類的 IDE,這些開發工具會很貼心地幫忙把這些類別、函數、變數、常數,塗上不同的顏色,閱讀起來相當方便!

    大家一起來養成好的寫程式習慣吧!

      電子郵件

      有興趣的主題
      量化交易金融知識台灣股市國內期貨海外期貨虛擬貨幣

      有興趣的量化交易軟體/平台
      不清楚MultiChartsTradingViewPythonXQMT4MT5

      還有什麼詢問的?


      量化通粉絲社群,一起討論程式交易!

      加入LINE社群量化交易討論群」無壓力討論與分享!

      加入臉書社團「程式交易 Taiwan」即時獲取實用的資源!

      QP66
      QP66

      具備逾十年交易經驗,研究交易資產橫跨股票、債券、外匯、原物料,以及加密貨幣。現為量化避險基金交易員,亦曾任職於資金規模逾百億的避險基金,以及在區塊鏈企業擔任顧問一職。

      擅長從宏觀至微觀,由淺入深挖掘交易機會,並運用Python實現全自動化的投資組合管理。

      文章: 24

      發佈留言

      發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *