量化投資_EasyLanguage/PowerLanguage教學課程__【第一篇基礎】__【第十六章資料資訊】
第十六章:資料資訊
第一節:介紹
K線或者說Bar的日期時間、K線狀態、週期數據和累心個、開高低收價格、漲跌量等關鍵字在這一章會介紹到。對於某一個商品的基本特性也會在報價管理器中設定,也可以通過函式進行獲取等。這章屬基礎內容,使我們公式所賴以生存的資料。
第二節:K線或Bar相關
2.1 Ago
# 語法:
語法
N Bars Ago
或:
[N]
引數 N——數值表示式,用來指定回溯的 Bar 數量。
# 示例:
用前一根 Bar 的收盤價畫線: Plot1(Close Of 1 Bar Ago, "Previous Bar's close"); 用前第二根 Bar 的收盤價畫線: Plot1(Close[2], "Close 2 Bars ago");
# 說明:
與 Bar,Bars 聯合使用。Bar 前加數值表示式,表示從當根 Bar 到引用 Bar 的回溯數量。也可以用方括號括起一個數值表達 式來指定引用 Bar 回溯的數量。在這裡我們看到使用了跳躍字of,一般來說,我們使用方括號的方式比較清晰明瞭。
2.2 Bar/Bars
# 語法:
語法 Bar 或 Bars
# 示例:
Close Of 1 Bar Ago 返回值為前一根 Bar 的收盤價。 以當根 K 線的收盤價做多開倉: Buy This Bar On Close; 在下根 K 線以開盤價做多開倉: Buy Next Bar On Open;
# 說明:
與 This,Next 或 Ago 聯合使用,引用指定的 Bar。
2.3 BarInterval
# 語法:
語法 BarInterval
# 示例:
求指令碼所在圖表資料週期數值(Bar 間距)並將值賦給變數Value1:
Value1=BarInterval;
# 說明:
返回的是週期的數值。比如5分鐘週期,返回的是5,1tick返回的是1,1年返回的是1。這裡BarInterval的表示等同於商品設定週期數值:
2.4 BarStatus
# 語法:
語法 BarStatus(DataNum)
引數 DataNum——數值表示式,用來表明指定的資料。 如果引數沒有指定,則返回當前資料的值。
# 示例:
如果資料 1 中,最近一筆 tick 是當根 Bar 的收盤 tick,則BarStatus(1) 返回值為 2。
# 說明:
返回一個數值,表示指定的資料中當前 Bar 的最近一個 tick 的狀態。BarStatus 值為0表示最近tick是當前Bar的開盤tick, 值為 1 表示最近 tick 是當前 Bar 內的一個 tick,值為 2 表示 最近 tick 是當前 Bar 的收盤 tick。這個函式我們在之前的完成bar部分用過。
2.5 CurrentBar
# 語法:
語法 CurrentBar
# 示例:
CurrentBar 返回當前 Bar 的編號。
# 說明:
資料在設定的“指標運算參考的最大 Bar 數量”之後開始給 每一根 Bar 編號,之前設定的參考 Bar 不編號。例如,指標 運算參考的最大 Bar 數量設為 20,則以第 21 根 BAR 開始,從 1 順序編號。
2.6 BarType/DataCompression
# 語法:
Bartype 不同的週期型別對應的 Bartype 值為: 0 — Ticks &合約 (Ticks & Contracts) 1 — 日內 (秒 Seconds, 分 Minutes & 時 Hours) 2 — 日 Days 3 — 周 Weeks 4 — 月,季,年(Months, Quarters & Years) 5 — 點&變動(Points & Changes)
# 示例:
取資料的週期型別值,賦給變數 Value1:
Value1=BarType;
# 說明:
返回一個數值,表明指令碼所在資料的週期型別。
2.7 BarType_ex
# 語法:
BarType_ex 不同的週期型別對應返回值為: 1 — Ticks 2 — 分 Minutes 3 — 時 Hours 4 — 日 Days 5 — 周 Weeks 6 — 月 Months 7 — 年 Years 8 — Volume 9 — 秒 Seconds 10 — 季 Quarters 11 — 點 Points 12 — 變動 Change 13 — Points (Original) 14 — OX 圖 Point & Figure 15 — 卡吉圖 Kagi 16 — 磚型圖 Renko 17 — 新價線 Line Break 18 — Heikin Ashi
# 示例:
取資料的詳細週期型別,賦給變數 Value1:
Value1=BarType_ex;
# 說明:
這是BarType的延伸版本,會給出更詳細的週期示例。建議採用這版本
2.8 Open/High/Low/Close
# 語法:
# 示例:
# 說明:
這四個數值無需多說,不會這的話就不要寫程式碼了。另外他們分別有簡寫方式O/H/L/C,但是建議寫全。
2.9 Volume/V
# 語法:
語法 Volume
# 示例:
以當前 Bar 的 volume 值畫線: Plot1(Volume,"Volume"); 以前一根 Bar 的 volume 值畫線: Plot1(Volume Of 1 Bar Ago,"Previous Bar's volume"); 以前第二根 Bar 的 volume 值畫線: Plot1(Volume[2],"Volume 2 Bars ago");
# 說明:
返回當前 Bar 的成交量。 對於 Tick 週期,基於量的週期,日以內時間週期的圖表: —圖表設定成交量基於交易量,則 volume 值為當前 Bar 的上漲股數。 —圖表設定成交量基於成交筆數,則 volume 值為當前 Bar 的上漲筆數。 對於日線及日以上時間週期的圖表: —圖表設定成交量基於交易量,則 volume 值為成交股數。 —圖表設定成交量基於成交筆數,則 volume 值為成交筆 數。 注意:許多資料來源只提供有限的歷史成交量和成交筆數的數 據,實時儲存資料可以確保成交量和成交筆數資料的有效 性。
2.10 Openint/I
# 語法:
語法 Openint 或 I
# 示例:
以當前 Bar 的 openint 值畫線: Plot1(OpenInt,"Open interest"); 以前一根 K 線的 openint 值畫線: Plot1(OpenInt Of 1 Bar Ago,"Previous Bar's open interest"); 以前第二根 openint 值畫線: Plot1(OpenInt[2],"Open interest 2 Bars ago");
# 說明:
基於 tick 和量週期的圖表,openint 值為當前 Bar 的未平倉量。 日線以下的時間週期圖表: —圖表設定成交量基於成交筆數,則 openint 返回值為下 跌筆數。 —圖表設定成交量基於交易量,則 openint 返回值為下跌 股數(下跌手數)。 Openint 支援日線和以上時間週期的圖表。
2.11Ticks
# 語法:
語法 Ticks
# 示例:
畫出當前 Bar 的成交筆數(圖表設定成交量基於成交筆數): Plot1(Ticks,"Ticks"); 畫出當前 Bar 的成交股數(圖表設定成交量基於交易量): Plot1(Ticks,"Volume");
# 說明:
圖表設定成交量基於成交筆數,則 Ticks 返回每根 Bar 的成交 筆數。 圖表設定成交量基於交易量,則 Ticks 返回每根 Bar 的成交股 數(成交手數)。 圖表設定成交量基於成交筆數時: — 1-tick 圖表中,當前 tick 的 Ticks 返回值為 1。 — 多 tick、量、時間週期的圖表中,當前 Bar 的 Ticks 返 回值為當前 Bar 的成交筆數。 圖表設定成交量基於交易量時: — 1-tick 圖表中,當前 tick 的 Ticks 返回值為當前 tick 的成 交股數。 — 多 tick,量,時間週期的圖表中,當前 Bar 的 Ticks 返 回值為當前 Bar 的成交股數。 注意:許多歷史資料來源只提供有限的歷史成交量和成交筆數 的資料,實時儲存資料可以確保成交量和成交筆數資料的有 效性。
2.12UpTicks
# 語法:
語法 Upticks
# 示例:
畫出當前 Bar 的上漲筆數(圖表設定成交量基於成交筆數): Plot1(UpTicks,"Up Ticks"); 畫出當前 Bar 的上漲股數(圖表設定成交量基於成交股數): Plot1(UpTicks,"Up Volume");
# 說明:
如果圖表設定成交量基於成交筆數,則 UpTicks 返回值為上 漲筆數。 如果圖表設定成交量基於交易量,則 UpTicks 返回值為上漲 股數。 當前 tick 的價格高於前根 tick 的價格時,則當前 tick 的成交 筆數即為上漲筆數。上漲股數為上漲筆數的成交量,即上漲 量。 圖表設定成交量基於成交筆數時: — 1-tick 圖表中,當前 tick 的 UpTicks 返回值為 1。 — 多 tick,量,時間週期的圖表中,當前 Bar 的 UpTicks 返回值為當前 Bar 的上漲筆數。 圖表設定成交量基於交易量時: — 1-tick 圖表中,當前 tick 的 UpTicks 返回值為當前 tick 的上漲股數。 — 多 tick,量,時間週期的圖表中,當前 Bar 的 UpTicks 返回值為當前 Bar 的上漲股數。 注意:許多歷史資料來源只提供有限的歷史成交量和成交筆數 的資料,實時儲存資料可以確保成交量和成交筆數資料的有 效性。
2.13DownTicks
# 語法:
語法 Downticks
# 示例:
畫出當前 Bar 的下跌筆數(圖表設定成交量基於成交筆數): Plot1(DownTicks,"Down Ticks"); 畫出當前 Bar 的下跌股數(圖表設定成交量基於交易量): Plot1(DownTicks,"Down Volume");
# 說明:
圖表設定成交量基於成交筆數,則 DownTicks 返回每根 Bar 的下跌筆數。 圖表設定成交量基於交易量,則 DownTicks 返回每根 Bar 的下跌股數(下跌手數)。 當前 tick 的價格低於前一 tick 的價格時,則當前 tick 的成交 筆數即為下跌筆數。下跌股數為下跌筆數的成交量,即下跌 量。 圖表設定成交量基於成交筆數時: — 1-tick 圖表中,當前 tick 的 DownTicks 返回值為 1。 — 多 tick,量,時間週期的圖表中,當前 Bar 的 DownTicks 返回值為當前 Bar 的下跌筆數。 圖表設定成交量基於交易量時: — 1-tick 圖表中,當前 tick 的 DownTicks 返回值為當前 tick 的下跌股數。 — 多 tick,量,時間週期的圖表中,當前 Bar 的 DownTicks 返回值為當前 Bar 的下跌股數。 注意:許多歷史資料來源只提供有限的歷史成交量和成交筆數 的資料,實時儲存資料可以確保成交量和成交筆數資料的有效性。
2.14 Time/T
# 語法:
語法 Time 或 T
# 示例:
10:15 AM 時 Time 返回值 1015 3:45 PM 時 Time 返回值 1545
# 說明:
返回一個數值,表示當前 Bar 的收盤時間。時間格式為 HHmm,24 小時制,1300=1:00PM。
2.15 Time_s
# 語法:
語法 Time_s
# 示例:
10:15:25 AM 時 Time_s 返回值為 101525 3:45:00 PM 時 Time_s 返回值為 154500
# 說明:
返回一個數值,表示當前 Bar 的收盤時間,時間包含秒。時 間格式為 HHmmss,24 小時制,130000=1:00:00PM。
2.16 SessionLastBar
# 語法:
語法 SessionLastBar
# 示例:
判斷當前 Bar 是否為交易時段的最後一根 Bar,將結果賦值給變數 LastBar:
Variable:LastBar(False);
LastBar=SessionLastBar;
# 說明:
返回邏輯值,表明當前 Bar 是否為時段結束前的最後一根 Bar。如果當前 Bar 是交易時段的最後一根 Bar 則返回值為 True,否則返回值為 False。
2.17 Data
# 語法:
語法 DataN 或 Data(N)
引數 N——資料編號。
(N)——數值表示式,指定子圖編號。
# 示例:
High Of Data2 返回 data2 的一個 Bar 的最高價。 High Of Data(2) 返回 data2 的一個 Bar 的最高價。
# 說明:
跨週期數據圖表中指定子圖資料。跨週期圖表中,每個圖表 都有唯一的編號。
第三節:與商品相關
3.1ExpirationDate
# 語法:
語法 ExpirationDate
(到期日只能用在期貨和期權。)
# 示例:
如果到期日為 2008 年 10 月 30 日,則 ExpirationDate 返回值為 1081030。 如果到期日為 1990 年 4 月 2 日,則 ExpirationDate 返回值為9900402。
# 說明:
返回值為指令碼所在圖表中商品的到期日(QM 中設定)。日期 格式為 YYYMMdd,YYY 表示自 1900 至今的年份,MM 表示 月,dd 表示日。例如日期為 2007 年 10 月 30 日,則返回值 為 1071030,日期為 1999 年 4 月 2 日,返回值為 990402。
3.2GetExchangeName
# 語法:
語法 GetExchangeName
# 示例:
圖表為股指期貨資料,GetExchangeName 返回”CFFEX”。 圖表為 E-mini S&P 500 ,GetExchangeName 返回”CME”。
# 說明:
返回字串表示式,包含圖表中的商品的交易所名稱。
3.3GetSymbolName/Symbol
# 語法:
語法 GetSymbolName
# 示例:
圖表商品為股指期貨主力合約,GetSymbolName 返回值:
“CZCE.SR HOT”
# 說明:
返回字串表示式,包含圖表中商品名稱。
3.4 Point
# 語法:
語法 Point 或 Points
注意 Point=1/Pricescale
# 示例:
股指的 1 Point 為 0.1
白糖的 1 Point 為 1
MinMove * 1 Point 返回當前圖表商品的一跳。如股指返回0.2
# 說明:
返回一個十進位數值,等於價格精度(QM 設定)。表示為:每跳的點數。
3.5PointValue
# 語法:
語法 Pointvalue
注意 Pointvalue=Bigpointvalue/Pricescale
價格精度價值=整點價值/價格精度的倒數
# 示例:
股指的 Pointvalue 為 30
白糖的 Pointvalue 為 10
# 說明:
返回一個數值,表明 1 價格精度的價值。
3.6 BigPointValue
# 語法:
語法 BigPointValue
注意 BigPointValue=PointValue*PriceScale
整點價值=價格精度的價值*價格精度的倒數
# 示例:
BigPointValue 中國金融期貨交易所股指的整點價值為 300元。
BigPointValue 鄭州商品交易所白糖的整點價值為 10 元。
# 說明:
所謂整點價值指的就是商品的最小跳動=多少錢。
3.7 PriceScale
# 語法:
語法 Pricescale
注意 Pricescale=Bigpointvalue/Pointvalue
價格精度倒數=整點價值/價格精度價值
# 示例:
股指的 Pricescale 為 10
白糖的 Pricescale 為 1
# 說明:
返回一個數值,代表價格精度的倒數。
3.8MinMove
# 語法:
語法 Minmove
# 示例:
股指的 Minmove 是 2
白糖的 Minmove 是 1
MinMove*PointValue 返回當前圖表商品的一跳對應的價值。如股指返回 60(2*30 元)
# 說明:
返回一個數值,表明圖表中資料的價格變動的最小單位。 (Quote Manager 中的設定) 只能設定為整數。
第四節:與其他圖表相關
4.1RevSize
# 語法:
語法 Revsize
# 示例:
如果 OX 圖的反轉設定為 3,則 Revsize 返回值為 3 如果卡吉圖的反轉設定為 4%,則 Revsize 返回值為 4% 如果新價線圖的反轉設定為 5,則 Revsize 返回值為 5
# 說明:
返回 OX 圖的反轉設定值,卡吉圖的反轉設定值,或新價線 圖的反轉設定值。 可以在設定商品》設定》圖表型別中設定此值。
4.2 BoxSize
# 語法:
語法 Boxsize
# 示例:
如果磚形圖的單位大小設定為 3,則 Boxsize 返回值為 3。 如果圖表型別為標準或卡吉圖,則 Boxsize 返回值為 0。
# 說明:
返回指標或訊號所在基於價格單位的圖表中價格單位的設 定值。 在圖表中的設定商品》設定》圖表型別可以設定單位大小的值。
第六節:編輯商品設定
我們在QM報價管理器中可以自定義商品
=================================================
之前的文章感謝大家的轉載,希望轉載時請註明出處,本人轉自其它網站的圖表一併感謝,謝謝~!
https://www.cnblogs.com/noah0532/