PowerLanguage 程式編譯簡介 | multicharts plot語法

進入Multicharts程式交易的領域,初學者剛開始接觸如何寫語法會用到的程式語言 ... Plot1[Displace]( var0, "Avg" ) ; (Plot就是畫圖的意思).期權加油站跳到主文國內外期貨.選擇權.程式交易.multicharts.Easywin.YMF.營業員.開戶.連絡我[email protected]部落格全站分類:財經政論相簿部落格留言名片Jun23Tue201510:56PowerLanguage程式編譯簡介   進入Multicharts程式交易的領域,初學者剛開始接觸如何寫語法會用到的程式語言叫做powerlanguage建議可以買這本書來研究,它是一本工具書透過這篇文章先簡單概略介紹可以評估看看這樣的程式語言對本身會不會太難懂,如果有興趣可以進一步研究 保留字好比學英文會用到的基本單字,這是組成程式語言的基本要件 常用的保留字  執行新倉買進或新倉賣出,多單平倉或空單平倉;最重要的四個指令 進場的方式(nextbaratmarket、Stop、Limit...)決定進場的口數contracts。

例如buy2contractsnextbaratmarketSetStopLoss(金額):定額停損。

SetProfitTarget(金額):定額停利。

SetPercentTrailing(金額,百分比):獲利多少金額後,折返多少百分比出場。

SetDollarTrailing(金額):進場後由最高獲利點起算,損失多少金額出場。

SetBreakEven(金額):獲利多少金額後回到進場點就出場若有使用SetPercentTrailing及SetDollarTrailing時要特別注意,記得打開精密回測的功能來做交易及回測。

 輸入參數input:參數可以透過外部調整主要是做為人跟程式間的溝通橋樑(窗口),我們可以透過參數對程式下達指令例如:12MA、9KD等。

也可以用來指定下單口數或每日交易次數等。

只要是我們希望程式完成後,由人工指定改變的資料都可設成參數。

Inputs:pLen(0);value1=average(close,pLen);自訂變數Variables: 也就是儲存空間主要的資料型態有:數字(number)、文字(char、string)、布林(true/false)變數是程式內最基礎的元件,可以說是要蓋大樓時的磚塊,所有的功能都是由它堆砌而成的,變數也常因為使用的方法不同而給予不同的名稱 vars:vLen(0);vLen=100;value1=average(close,vLen);陣列(Arrays):一堆變數的集合陣列本身是一堆連續的變數,我們使用一個名稱加上索引值(Index)來指定或叫用它,因此省去定義一大堆變數名稱及叫用上的麻煩,因為它有連續排列的關係,所以有利於連續資料的處理。

數字運算時償會用到的函數Mod:取餘數IntPortion:取整數FracPortion:取小數ABSValue:取絕對值Neg:取負的絕對值Power:N次方SquareRoot:開根號標點符號 範例:前一根K棒最高點highest[1]前一天的收盤價CloseD(1);Value1的前一個值Value1[1]; 常用到的基本程式流程If….thenIf….then….begin….end;If...then...ElseIf...thenbegin....EndelseIf迴圈指令For數值變數=起始值to結束值begin... End;例如forValue1=0toLen1beginvar0=var0+1;end; PowerLanguage的公式基本三大類型 函數、指標、訊號 函數:一段程式集我們在開發程式時,有些程式碼是經常使用的,例如平均值或是計算結算日,但是到處都寫一樣的程式碼,造成程式的可讀性低,而且當需要修改時,要改一大堆地方,太麻煩而且容易遺漏,所以可以用函數把這些程式碼給予一個函數名稱,以後直接用這一個名稱叫用它即可。

範例Summation函數(PriceValue(NumericSeries),Len(NumericSimple)):Return(Numeric)(參數1(數值時序),參數2(簡單數值)):回傳值(數值)Summation內容inputs:PriceValue(numericseries),Len(numericsimple);variables:var0(0);var0=0;forValue1=0toLen-1beginvar0=var0+PriceValue[Value1];


常見投資理財問答


延伸文章資訊