MultiCharts語法教學- CH3:參數和變數(Input and Variable)
文章推薦指數: 80 %
參數(inputs)和變數(variables)可以想像成是一個容器(Ex: 瓶子),你把需要的數值(Ex: 5公升)放到這個容器,之後再從這個容器取出來使用。
Skiptocontent
中文(台灣)
中文(台灣) English
Postauthor:Ronald
Postpublished:412月,2021
Postcategory:MultiCharts
Postcomments:0Comments
內容目錄
參數和變數型別數值型別(Numerical)字串型別(String)真假值型別(TrueFalse)參數(Input)宣告語法Example變數(Variable)宣告語法ExampleReference
參數和變數
參數(input)和變數(variable)可以想像成是一個容器(Ex:瓶子),容器內儲存需要的數值(Ex:5公升)。
但是在使用這個容器之前,需要先宣告,宣告會告訴編譯器要儲存的數值的型別,編譯器會根據型別分配需要的記憶體大小。
因此,參數和變數分成宣告和使用兩個階段:第一個階段-宣告:宣告參數或變數的名稱,給予預設值或初始值,同時定義他們的型別,型別可以是數值型別、字串型別或真假值型別。
第二個階段-使用:在程式碼中使用參數或變數的名稱,當程式執行到名稱時,就會去使用儲存的值。
型別
型別代表值的意義和操作。
型別分成三類:數值型別(Numerical)、字串型別(String)和真假值型別(TrueFalse)。
數值型別(Numerical)
直接使用數字就是代表數值型別,1+1程式就會知道是要做數學運算,得到的結果是數值:2。
數值型別又分成NumericSimple和NumericSeries兩種。
在訊號腳本和指標腳本的參數宣告,預設值決定數值是NumericSimple或是NumericSeries。
在訊號腳本和指標腳本的變數宣告,初始值決定數值是NumericSimple或是NumericSeries。
NumericSimpleNumericSimple的數值是一個常數,在不同的K棒都不會改變,所以沒有歷史數值。
NumericSimple同時也是保留字,在函數腳本用來宣告參數(input)是NumericSimple型別。
NumericSeriesNumericSeries的數值會隨著K棒改變,Ex:Close(收盤價),因此有歷史數值。
用Nbarsago或[N]表示前N根K棒的歷史數值,EX:Close2barsago或Close[2]。
NumericSeries同時也是保留字,在函數腳本用來宣告參數(input)是NumericSeries型別。
NumericSimple和NumericSeries
字串型別(String)
使用兩個雙引號("")將內容框起來代表字串型別,"12"代表是字串型別,"12"+"34"程式就會知道是"12"和"34"兩個字串相加,得到的結果是字串:"1234"。
字串型別又分成StringSimple和StringSeries兩種。
在訊號腳本和指標腳本的參數宣告,預設值決定字串是StringSimple或是StringSeries。
在訊號腳本和指標腳本的變數宣告,初始值決定字串是StringSimple或是StringSeries。
StringSimpleStringSimple的字串是一個常數,在不同的K棒都不會改變,所以沒有歷史數值。
StringSimple同時也是保留字,在函數腳本用來宣告參數(input)是StringSimple型別。
StringSeriesStringSeries的數值會隨K棒改變,因此有歷史數值。
用Nbarsago或[N]表示前N根K棒的歷史數值。
StringSeries同時也是保留字,在函數腳本用來宣告參數(input)是StringSeries型別。
StringSimple和StringSeries
真假值型別(TrueFalse)
使用保留字true和false代表真假值型別,true表示邏輯的真,false表示邏輯的假。
真假值型別又分成TrueFalseSimple和TrueFalseSeries兩種。
在訊號腳本和指標腳本的參數宣告,預設值決定真假值是TrueFalseSimple或是TrueFalseSeries。
在訊號腳本和指標腳本的變數宣告,初始值決定真假值是TrueFalseSimple或是TrueFalseSeries。
TrueFalseSimpleTrueFalseSimple的字串是一個常數,在不同的K棒都不會改變,所以沒有歷史數值。
TrueFalseSimple同時也是保留字,在函數腳本用來宣告參數(input)是TrueFalseSimple型別。
TrueFalseSeriesTrueFalseSeries的數值會隨K棒改變,因此有歷史數值。
用Nbarsago或[N]表示前N根K棒的歷史數值。
TrueFalseSeries同時也是保留字,在函數腳本用來宣告參數(input)是TrueFalseSeries型別。
TrueFalseSimple和TrueFalseSeries
參數(Input)
下面是訊號腳本和指標腳本宣告的語法。
函數腳本的宣告見函數(funtion)。
宣告語法
Input:InputName1(DefaultValue1),InputName2(DefaultValue2),etc;
Input:表示宣告參數。
InputName:參數的名稱,名稱不區分大小寫,不能是數字或句點(.)開頭。
DefaultValue:參數的預設值和型別,參數的預設值決定型別,型別可以是數值(Numerical)、字串(String)、真假值(TrueFalse)。
保留字inputs等同input。
註:參數宣告的結束要加分號(;),沒有加會編譯錯誤。
你可以從MultiCharts設定訊號腳本和指標腳本參數的預設值,如果沒有從MultiCharts設定新的預設值,參數的預設值會使用腳本中定義的DefaultValue。
從MultiCharts設定的新預設值直接執行就能套用,不需要重新編譯。
參數值只能透過一開始的預設值設定和改變,設定後,在腳本中無法再透過程式碼更改參數值。
函數腳本的參數宣告沒有預設值,在使用函數的時候,會同時給予參數值。
Example
Input:Length(20);
Input:Price(Close),Name("LastClose");
Input:Draw_Line(True);
變數(Variable)
下面是訊號腳本和指標腳本宣告的語法。
函數腳本的宣告見函數(funtion)。
宣告語法
Variable:[IntraBarPersist]VariableName1(InitialValue1[,DataN]),[IntraBarPersist]
VariableName2(InitialValue2[,DataN]),etc.
Variable:表示宣告變數。
IntraBarPersist –[]代表可省略的參數,每有一筆交易成交,就重新計算變數值(updatebytick)。
如果沒有指定這個參數,預設每一根K棒的結束重新計算變數值(updatebybar)。
IntraBarPersist見章節。
VariableName –變數的名稱,名稱可以是字母、底線、底線、數字、句點(.)組成,名稱英文不分大小寫。
名稱不可以是數字或句點(.)起頭。
InitialValue –變數的初始值和型別,變數的初始值決定型別,型別可以是數值(numerical)、字串(string)和真假值(TrueFalse)。
DataN –[]代表可省略的參數,指定變數綁定的DataN。
如果沒有指定這個參數,預設綁定預設的DataN。
DataN見章節。
註:參數宣告的結束要加分號(;),沒有加會編譯錯誤。
保留字var、vars、variables等同於variable。
您不能從MultiCharts設定變數的初始值。
變數值透過初始值設定,設定後,可以在腳本中再透過程式碼更改變數值(指派其他的值)。
Example
Variable:IntraBarPersistMax(100);
Variable:Min_Price(Close,Data2);
Variable:Overnight(False),Name("Intra-Day");
Reference
https://www.multicharts.com/trading-software/index.php?title=Input
https://www.multicharts.com/trading-software/index.php?title=Variable
Tags:MultiCharts,PowerLanguage
YouMightAlsoLike
MultiCharts語法教學–CH9:Print和檔案
34月,2022
MultiCharts語法教學–CH5:迴圈(Loop)
1812月,2021
發佈留言取消回覆CommentEnteryournameorusernametocomment
Enteryouremailaddresstocomment
EnteryourwebsiteURL(optional)
在瀏覽器中儲存顯示名稱、電子郵件地址及個人網站網址,以供下次發佈留言時使用。
Δ
AboutMe
Ronald
記錄學習心得,希望對你有所幫助。
ContactInfoEmail:[email protected]語法教學CH1:MultiCharts如何執行策略
CH2:策略的框架和基本語法
CH3:參數和變數(InputandVariable)
CH4:分支(Branch)
CH5:迴圈(Loop)
CH6:買賣指令
CH7:陣列(Array)
CH8:函數(Function)
CH9:Print和檔案
CH10:日期和時間(DateandTime)
2022年8月
一
二
三
四
五
六
日
1234567
891011121314
15161718192021
22232425262728
293031
«4月
延伸文章資訊
- 1【單元6】認識變數(Variable)與參數(Input) - 統一期貨
變數幾乎是任何程式語言都會運用到,可以說是程式腳本最最最基本的要素之一,更複雜的運算與判斷都需要變數。參數則提供程式與使用者間更大的互動彈性,另外也牽涉到 ...
- 2請問參數、變數的差別?? - 看板Physics - 批踢踢實業坊
參數(parameter)與變數(variable) 如果再加上係數、常數、自變數、應變數的話~~ 這些名詞彼此數學及物理上的差異為何呢? 謝謝~~~ -- ※ 發信站: 批踢踢 ...
- 3變數(Variables)與參數(Inputs)宣告 - 程式交易快譯通
使用參數與變數主要有三項優點,一是增加彈性;二是增加程式腳本可讀性;三是提高程式執行效能。以下分別說明如何運用參數與變數。 ... 變數是用來儲存特定 ...
- 4參數,也叫參變數 - 華人百科
參數,也叫參變數,是一個變數。 我們在研究當前問題的時候,關心某幾個變數的變化以及它們之間的相互關系,其中有一個或一些叫自變數,另一個或另一些叫因變數。
- 5參數和引數之間的差異- Visual Basic - Microsoft Docs
這項資訊是由您在呼叫程式時傳遞至程式的變數、常數和運算式所組成。 為了將這項資訊傳達給程式,程式會定義參數,而呼叫端程式碼會將引數傳遞至該 ...