iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 3
0
自我挑戰組

投資小白的煉金之旅 - XScript快速入門系列 第 3

[Day03] 運算方式與回傳值

萬物必有本。進入今天主題前,要先認識的不是撰寫語法,而是要了解 XS 運算的最小對象 — K 棒。

系列主要還是介紹 XS 本身語法,交易方面的知識會基本帶過。想深入了解的,可以連結底下的參考資源補強喔!

K 棒最主要目的是要知道在某段時間區間內價格的走勢。並由四個價位與漲跌情況,來形成它的形狀與顏色。

四個價位分別是—

  • 開盤價(開始價): 長在 K 棒柱子的兩端。在市場交易時間或特定區間內,開始交易的價位
  • 收盤價(最終價): 長在 K 棒柱子的兩端。在市場交易時間或特定區間內,結束交易的價位
  • 最高價: 長在 K 棒柱子上面的細線。在市場交易時間或特定區間內,最高的價位
  • 最低價: 長在 K 棒柱子下面的細線。在市場交易時間或特定區間內,最高的價位

Imgur

目前最常見的是以交易日為單位的日 K,其他還有週 K、月 K 甚至分 K 等。

回傳值

顧名思義就像我們寫函式會以return取值,XS 中也需要透過一些方式知道要拿哪些值去運算,像是上面提到的各種價位,還有成交量、日期等。因此在 XS 有針對這些常用的值建立對應的關鍵字,來進行更複雜的運算。

值(欄位) 關鍵字 縮寫
開盤價 Open O
收盤價 Close C
最高價 High H
最低價 Low L
日期 Date D
時間 Time T
成交量 Volume V
漲跌停價位(日頻率) Uplimit

另外關鍵字寫法還蠻彈性的,除了可以寫縮寫,也不區分大小寫。

用幾個簡單情境來練習一下吧!

// 今日收在最高點,也就是收盤價等於最高價
close = high;
Close = High;
C = H;
c = h;

//取得最高價與最低價的落差
high - low;
High - Low;
H - L;
h - l;

運算方式

知道一根 K 棒表示一段時間內的價位變化之後,就可以得知數個 K 棒的序列就是表達一連串時間下的多空角力。所以在執行過程中,腳本會對於依序對目標的 K 棒進行指令的邏輯運算與判斷。最後就能得到符合篩選條件的商品。

在有些策略中,會希望知道對於目標 K 棒來說的漲跌情況如何。所以我們會需要取得前面 K 棒的資訊。在 XS 中,是以 關鍵字加上中括號[N] 來取前面第 N 根的 K 棒。

bar

試著練習一下

// 取得近一日漲跌幅,也就是目標日與前一日的收盤價差距
Close - Close[1];

小結

終於踏出第一步囉!

今天就到這邊
Happy trading ! 明天見囉 /images/emoticon/emoticon37.gif

參考資源


上一篇
[Day02] 認識 XQ 系列
下一篇
[Day04] 語法的基本結構
系列文
投資小白的煉金之旅 - XScript快速入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言