運算子


運算子的功用

在學會使用回傳值的概念之後,接下來,我們先來介紹腳本中,要串接回傳值,建立各種運算的關係時,所需要用到的元素,這些元素,我們稱之為運算子,我們必須靠這些運算子,把電腦幫我們準備好的回傳值,拿來作數學運算,比大小,作邏輯判斷,如此一來,我們才能完成一個敘述。
例如上面提到的open >high[1]這個陳述式,open與high[1]之間,就是透過”>”這個字來建立關係,這些被拿來建立數值與數值之間關係的字,我們統稱之為運算字。

運算子的種類

Xscript所提供的運算子分成三大類,分別為數學運算子,關係運算子,邏輯運算子,茲分述如下:

數學運算子

這部份的運算子大家都很熟悉,一共有四個,就是我們在小學數學課本裡學過的加減乘除,這些基本的數學運算包括相加 "+",相減 "-",相乘 "*",相除"/",以及等號"="
例如以下的敘述式
 close/close[1]>1.02

這代表這個bar的收盤價比前一根的收盤價漲幅超過2%

關係運算子

關係運算子是在呈現兩個數字之間的關係,Xscript中可以拿來運用的關係運算子,都是大家很熟悉的大於(>),等於(=),小於(<),大於等於(>=),小於等於(<=),不等於(<>)共六種
在這邊要特別說明的是,關係運算式的兩端各都只能是一個代表數值的文字或數值,所以我們可以寫close>close[1] and close[1]>close[2]
但我們不能寫close>close[1]>close[2]
因為這樣的寫法在>這個關係運算式的兩端,有一端不是數值而是true,false的邏輯值了。
邏輯運算子
邏輯運算因子有三個 " and" ," or","Not"
前兩個運算子是拿來串接兩個邏輯判斷式,其運作的邏輯如下:
true and true=true
true and false= false
false and true = false
false and false = false

true or true = true
true or false = true
false or true = true
false or false = false

至於not,則是拿來否定一個邏輯判幾式之用
not false=true
not true=false

有了這三種運算子,加上上一節介紹的回傳值,我們就可以很方便的描述股價間的各種關係了。