探索FMZ策略編輯器的新功能:ChatGPT如何大幅提升您的量化生產(chǎn)力
對于量化交易、程序化交易初學者學習入門最大的困難是什么?一般來說有這么幾條。
基礎知識欠缺:包括基礎概念、市場規(guī)則、交易知識、策略思路等。
編程基礎薄弱:包括邏輯表達、程序設計編寫、程序調(diào)試排錯。
邏輯思維薄弱:思考的過程容易造成混亂,越思考越混亂。
自學困難:出問題無從下手解決,可能連問題搜索的方向都不清楚。
隨著AI技術的發(fā)展,以上這些問題在一定程度上可以找到解決方案。最近大火的Chat GPT就可以用來作為量化交易學習、研究、創(chuàng)作的工具。隨著FMZ平臺對于策略編輯器的一次全新升級,同時也接入了Chat GPT,使得大幅提升了量化生產(chǎn)力,接下來就讓我們一起來探索FMZ策略編輯器的新功能!
使用Chat GPT輔助代碼設計
目前雖然Chat GPT的功能已經(jīng)十分強大,對于人類提出的問題理解程度已經(jīng)非常的高。但是它給出的答案依然對于問題描述的完整程度、描述的準確性等因素十分敏感,如果描述的場景、問題內(nèi)容等不準確,Chat GPT還是無法給出十分完美的答案。所以在使用它解決一些問題時需要盡量表述正確、完整。
接下來我們就使用FMZ平臺策略編輯器的Chat GPT功能解決一個代碼設計問題,登錄FMZ平臺,在某個策略編輯頁面。
1、如何喚出ChatGPT

在空白處使用右鍵菜單,選擇ChatGPT選項并點擊,可以喚出Chat GPT
,或者使用?K喚出ChatGPT。
2、關于提問的方式
假如我現(xiàn)在是一個量化交易初學者,我有一個需求:“使用一分鐘K線合成任意周期K線數(shù)據(jù)”。作為初學者我編程能力薄弱,實在是不會寫這樣的算法,以前只能查找資料、找大神求助,現(xiàn)在有了Chat GPT就可以直接問它要答案。當然就如上文所說,直接描述這個需求:“使用一分鐘K線合成任意周期K線數(shù)據(jù)”。GPT大概率是給不到你一個100%可用的答案的,還需要盡量把問題描述完善。就以這個需求例子來說,小編我不斷調(diào)整我的問題,問了好多次才得到可用的并且我想要的答案。那么我們就把這個需求描述的更加完善一點:
喚出ChatGPT后,就可以把以上優(yōu)化過的提問內(nèi)容填寫進去。

ChatGPT就開始干活了。

等它寫完。

有時候Chat GPT
給代碼包裹了```符號,這個是在markdown中表示包裹住的內(nèi)容是代碼。所以我們刪除掉第一行和最后一行就行了。因為我給它提出的問題中要求使用$.PlotRecords(KLineData, "name")
畫圖,所以策略要引用畫線類庫才能畫圖,畫圖是為了驗證Chat GPT給出的代碼合成出的K線數(shù)據(jù)是否正確。
關于什么是模板類庫,這里不再贅述,可以查詢FMZ的API文檔,畫線類庫地址
Chat GPT
給出的這個代碼是直接可以回測的,我把回測系統(tǒng)的默認K線周期設置為5分鐘,用來對比Chat GPT給出的算法計算出的K線數(shù)據(jù)畫出的K線圖。

3、回測測試Chat GPT給出的代碼


初步看來ChatGPT給出的算法使用1分鐘K線合成5分鐘K線是正確的。
4、ChatGPT寫的完整的代碼
使用Chat GPT解釋代碼
FMZ上集成的ChatGPT不僅會幫你寫代碼,而且還會幫你解釋代碼。選中剛才ChatGPT寫出的代碼中的composeKLineData
函數(shù),點擊右鍵彈出菜單:


使用Chat GPT給出建議、優(yōu)化代碼
甚至ChatGPT還可以給出優(yōu)化建議,優(yōu)化后的代碼。
