การตรวจสอบระบบ

ทำอะไรได้ และทำได้เร็วแค่ไหน

ทุกอย่างในหน้านี้มาพร้อม @tradecanvas/chart 1.31.0 เวลาต่อเฟรมวัดใน Chrome บนแล็ปท็อปที่ใช้กราฟิกในตัว (Intel UHD) และ node scripts/bench-render.mjs ในรีโพสิทอรีจะรันฉากเดียวกันบนเครื่องของคุณ

สรุปเป็นตัวเลข

ประเภทกราฟ
18
อินดิเคเตอร์ในตัว
111
เครื่องมือวาด
69
ภาษาของวิดเจ็ต
30
คีย์สไตล์
101
สวิตช์ฟีเจอร์ของวิดเจ็ต
112
ไลบรารีภายนอกที่ต้องพึ่งพาขณะรัน
0
ยูนิตเทสต์
3,000+

เวลาต่อเฟรม

เวลาที่ใช้วาดหนึ่งเฟรมระหว่างเลื่อนกราฟ 16.7 ms เท่ากับ 60 เฟรมต่อวินาที

กราฟอัตราส่วนพิกเซลCanvas 2DWebGLCanvas 2D / WebGL
1600×900, 500 แท่งเทียน + อินดิเคเตอร์ 4 ตัว · 2×227.4 ms19.6 ms
1600×900, ซูมออกบน 200,000 แท่ง + อินดิเคเตอร์ 4 ตัว · 2×234.5 ms20.2 ms
1600×900, ซูมออกบน 1,000,000 แท่ง + อินดิเคเตอร์ 4 ตัว · 2×234.5 ms16.7 ms
1600×900, ฮีตแมปความลึก สแนปช็อต 240 ชุด × 80 ระดับ · 2×225.5 ms16.8 ms
หกกราฟ แต่ละกราฟมี 500 แท่งเทียนและอินดิเคเตอร์ 2 ตัว · 2×223.5 ms17.2 ms
2560×1400, 2,000 แท่งเทียน + อินดิเคเตอร์ 4 ตัว · 1×141.6 ms17.7 ms
2560×1400, 2,000 แท่งเทียน + อินดิเคเตอร์ 4 ตัว · 1.5×1.570.8 ms17.6 ms
2560×1400, 2,000 แท่งเทียน + อินดิเคเตอร์ 4 ตัว · 2×2114.5 ms29.1 ms

ค่าเริ่มต้นคือ Canvas 2D ส่วน renderer: 'webgl' (หรือ 'auto') จะวาดพื้นที่กราฟด้วย WebGL 2 และกลับไปใช้ Canvas 2D เมื่อไม่มี WebGL 2 หรือคอนเท็กซ์ของ WebGL หายไป

เส้นทางข้อมูล

ติกสดพร้อม Bollinger Bands, EMA, RSI และ MACD บน 100,000 แท่ง
~0.001 ms
คำนวณอินดิเคเตอร์สี่ตัวเดิมใหม่ทั้งหมดบน 100,000 แท่ง
~27 ms
เส้นที่มีจุดมองเห็นได้ 1,000,000 จุด ลดจำนวนจุดสำหรับหนึ่งเฟรม
~2.6 ms
วาดใหม่เมื่อชี้เมาส์ (เป้าเล็ง คำอธิบายกราฟ)
~0.2 ms
การสลับสัญลักษณ์หรือกรอบเวลาจะแสดงม่านโหลดก็ต่อเมื่อนานกว่า
200 ms

ขนาดดาวน์โหลด

ย่อขนาดและบีบอัดด้วย gzip รวมทุกอย่างที่นำเข้า

Chart, API แบบ headless
176 KB
ChartWidget, อินเทอร์เฟซครบชุด
315 KB
ตัวเรนเดอร์ WebGL โหลดเมื่อใช้ครั้งแรก
18 KB

ตรวจสอบอย่างไร

  • ยูนิตเทสต์กว่า 3,000 รายการในเจ็ดแพ็กเกจรันบน CI ทุกครั้งที่มี pull request
  • ตัวเรนเดอร์ WebGL วาดแท่งเทียนบนพิกเซลของอุปกรณ์ชุดเดียวกับ Canvas 2D ส่วนเส้นและพื้นที่ระบายต่างกันเพียงไม่กี่พิกเซลที่ขอบซึ่งลดรอยหยัก
  • ตัวเรนเดอร์ WebGL ผ่านการตรวจสอบใน Chromium, Firefox และ WebKit แล้ว หากไม่มี WebGL 2 หรือคอนเท็กซ์หายไป กราฟจะทำงานต่อด้วย Canvas 2D
  • ตัวอย่างโค้ดในเอกสารและในสกิลสำหรับเอเจนต์ผ่านการตรวจไทป์กับ API จริง
  • โปรแกรมอ่านหน้าจออ่านกราฟได้และใช้งานด้วยคีย์บอร์ดได้ วิดเจ็ตแสดงจากขวาไปซ้ายในภาษาอาหรับ ฮีบรู และเปอร์เซีย

ความสามารถ

กรองตามหมวด หรือค้นหาด้วยชื่อหรือ API

80 จาก 80
ความสามารถหมวดรายละเอียดและ API
แท่งเทียน แท่ง OHLC เส้น พื้นที่ เส้นฐาน Heikin-Ashi แท่งเทียนกลวงประเภทกราฟcandlestick, bar, line, area, baseline, heikinAshi, hollowCandle
Renko, Line Break, Kagi, Point & Figure, แท่งช่วงราคาประเภทกราฟขนาดกล่องหรือ ATR จำนวนเส้นที่ต้องทะลุ ระยะกลับตัวเป็นเปอร์เซ็นต์หรือราคา ช่วงราคาต่อแท่ง
แท่งเทียนวอลุ่ม Equivolume พื้นที่ HLC เส้นขั้นบันได เส้นพร้อมจุด สูง-ต่ำประเภทกราฟรวม 18 ประเภทกราฟ
ซ่อนซีรีส์หลักประเภทกราฟเหลือเพียงอินดิเคเตอร์และภาพวาด
กราฟสำหรับแดชบอร์ดประเภทกราฟกราฟแท่ง (จัดกลุ่ม ซ้อนกัน แนวนอน) กราฟโดนัทและวงกลม กราฟการกระจายและฟอง ฮิสโทแกรม ปฏิทิน เมทริกซ์สหสัมพันธ์ แผนที่รายกลุ่มอุตสาหกรรม เส้นทวนเข็มนาฬิกา สปาร์กไลน์ เกจ ฮีตแมปและทรีแมป กราฟน้ำตก ความลึก เส้นมูลค่าพอร์ต
Canvas 2D หรือ WebGL 2การเรนเดอร์renderer: 'canvas' | 'webgl' | 'auto', setRenderer, อีเวนต์ rendererChange
หนึ่งช่วงต่อคอลัมน์พิกเซลเมื่อซูมออกการเรนเดอร์เส้น แบนด์ และฮิสโทแกรมของอินดิเคเตอร์ เมื่อน้อยกว่าหนึ่งพิกเซลต่อแท่ง
เลื่อนหนึ่งล้านแท่งได้ลื่นไหลการเรนเดอร์พร้อมอินดิเคเตอร์สี่ตัว ที่อัตราส่วนพิกเซล 2
ฮีตแมปความลึก วอลุ่มโปรไฟล์ และมาร์เก็ตโปรไฟล์บน GPUการเรนเดอร์pushDepthSnapshot(book, time)
กราฟ WebGL หลายตัวในหน้าเดียวการเรนเดอร์สูงสุด 8 ตัว (setMaxWebGLCharts) ที่เหลือวาดด้วย Canvas 2D และกลับมาใช้ WebGL เมื่อคอนเท็กซ์กลับมา
คมชัดทุกสเกลหน้าจอการเรนเดอร์แท่งเทียน วอลุ่ม และภาพวาดตรงพิกเซลจริงของอุปกรณ์ที่ 100%, 125% และ 200%
ไม่พึ่งพาไลบรารีภายนอกขณะรันการเรนเดอร์ไม่มีอะไรต้องติดตั้งหรือตรวจสอบเพิ่ม
อินดิเคเตอร์ในตัว 134 ตัวอินดิเคเตอร์Pivot Points หกแบบ, MA Cross, สหสัมพันธ์กับสัญลักษณ์อื่น
แหล่งราคาอินดิเคเตอร์open, high, low, hl2, hlc3, ohlc4, hlcc4
อินดิเคเตอร์บนอินดิเคเตอร์อินดิเคเตอร์เช่น ค่าเฉลี่ยเคลื่อนที่ของ RSI ที่อัปเดตทุกติก
หลายอินดิเคเตอร์ในแผงเดียว ย้ายข้ามแผงได้อินดิเคเตอร์moveIndicatorToPane
อินดิเคเตอร์ตัวเดียวกันหลายครั้งอินดิเคเตอร์EMA 20 และ EMA 50 คู่กัน
ระดับและเกณฑ์อินดิเคเตอร์RSI 30/70, CCI ±100 บันทึกไปกับเลย์เอาต์
ค่าล่าสุดบนแกนอินดิเคเตอร์บนแกนราคาและแกนของแต่ละแผง ด้วยสีของเส้น
ยุบ ขยายเต็ม และจัดลำดับแผงใหม่อินดิเคเตอร์บันทึกไปกับเลย์เอาต์
เทมเพลตอินดิเคเตอร์อินดิเคเตอร์พารามิเตอร์ สไตล์ ระดับ และแผง บันทึกและนำไปใช้พร้อมกัน
สไตล์และการแสดงของแต่ละเส้นอินดิเคเตอร์เส้นที่ซ่อนอยู่ไม่ยืดสเกล; setIndicatorDefaults
วอลุ่มเดลตาและ CVDอินดิเคเตอร์ประมาณจากแท่งราคา
ส่งออกค่าอินดิเคเตอร์อินดิเคเตอร์CSV หรือ JSON หนึ่งคอลัมน์ต่อเส้น
อัปเดตแบบคำนวณเพิ่มบนติกสดอินดิเคเตอร์update() คำนวณใหม่เฉพาะแท่งที่กำลังก่อตัว
เครื่องมือวาด 69 แบบเครื่องมือวาดเส้น ช่องราคา ฟีโบนัชชี แกนน์ พิตช์ฟอร์ก คลื่นเอลเลียต รูปแบบ วัฏจักร การคาดการณ์
การตั้งค่าเฉพาะของแต่ละเครื่องมือเครื่องมือวาดสไตล์ คุณสมบัติ และพิกัดบนตารางราคาของตลาด
สถานะซื้อและขายเครื่องมือวาดความเสี่ยงต่อผลตอบแทน ปริมาณคำนวณจากความเสี่ยงเป็นเปอร์เซ็นต์หรือจำนวนเงิน
แจ้งเตือนบนภาพวาดเครื่องมือวาดเมื่อราคาตัดเส้นแนวโน้มหรือช่องราคาตามที่วาดไว้ รวมถึงบนสเกลลอการิทึม
ลำดับ กลุ่ม และเทมเพลตเครื่องมือวาดเลื่อนไปข้างหน้า ส่งไปข้างหลัง จัดกลุ่ม ล็อก ซ่อน
โน้ต คำอธิบายประกอบ ลูกศร ธง พู่กัน เส้นทาง เส้นโค้งเครื่องมือวาดวาดด้วยมืออิสระและแบบหลายจุด
Anchored VWAP และวอลุ่มโปรไฟล์ช่วงคงที่เครื่องมือวาดอ่านจากแท่งของกราฟ
ยางลบ ซูมด้วยกรอบ แม่เหล็กแบบแรง ปุ่มลัดเครื่องมือวาดAlt+T, Alt+H, Alt+J, Alt+V, Alt+C, Alt+F
ไปยังวันที่ ช่วง 1D ถึงทั้งหมดสเกลและเวลาซูมออกได้ไม่จำกัด
เขตเวลา IANA พร้อมเวลาออมแสงสเกลและเวลาหรือเขตเวลาของตลาดเอง
กรอบเวลาใดก็ได้ และแท่ง tickสเกลและเวลา7m, 90m, 2d สร้างจากข้อมูลที่ฟีดให้มา ส่วน 100T สร้างจากรายการซื้อขาย
สเกลซ้ายและขวา ลอการิทึม กลับด้าน และเปอร์เซ็นต์แยกตามแผงสเกลและเวลาสเกลซ้ายสำหรับโอเวอร์เลย์หรือสำเนาของสเกลราคา
เปรียบเทียบสัญลักษณ์ ส่วนต่าง และอัตราส่วนสเกลและเวลาบนสเกลหรือแผงของตัวเอง เรียงตรงกันตามเวลา
การซื้อขายนอกเวลาปกติสเกลและเวลาจากช่วงเวลาซื้อขายของสัญลักษณ์
รูปแบบราคาและเวลาสเกลและเวลาpriceFormat เป็นฟังก์ชันหรือเศษส่วนอย่าง 1/32; timeFormatter
สเกลตามทศนิยมและช่วงราคาของสัญลักษณ์สเกลและเวลาpricePrecision, minTick: หุ้นที่ขยับทีละ 10 จะไม่แสดง 21,705
เส้นราคาสูงสุดและต่ำสุด bid และ askสเกลและเวลาbid และ ask จากติกของฟีด
เครื่องหมายเหตุการณ์บนกราฟสเกลและเวลาsignalMarkerHover, signalMarkerClick
ฟีดสำเร็จรูปและฟีดของคุณเองข้อมูลและเรียลไทม์Binance, Bybit, Coinbase, Kraken, mock; WebSocketAdapter, PollingAdapter
โหลดประวัติเก่าเมื่อเลื่อนไปทางซ้ายข้อมูลและเรียลไทม์fetchHistoryBefore
ค้นหาสัญลักษณ์พร้อมรายละเอียดข้อมูลและเรียลไทม์searchSymbols, resolveSymbol: ทศนิยม ช่วงราคา ช่วงเวลาซื้อขาย เขตเวลา
รายละเอียดสัญลักษณ์ที่ได้หลังเชื่อมต่อข้อมูลและเรียลไทม์อีเวนต์ symbolInfo ของอะแดปเตอร์
บันไดความลึกตลาดข้อมูลและเรียลไทม์ปริมาณ bid และ ask ตามราคา คลิกเพื่อเทรด
ราคาสดสำหรับรายการเฝ้าดูข้อมูลและเรียลไทม์subscribeQuotes, setQuotes, getQuote
ข่าวและสถานะตลาดข้อมูลและเรียลไทม์fetchNews; นับถอยหลังสู่การเปิดหรือปิดตลาด
กฎของตลาดข้อมูลและเรียลไทม์setMarket: ช่วงราคาตามระดับราคา ราคาเพดานและราคาพื้นรายวัน หน่วยการซื้อขาย ช่วงเวลาซื้อขาย; HOSE, HNX, UPCoM และฟิวเจอร์ส VN30
คำสั่งและสถานะบนกราฟการเทรดลากเพื่อแก้ไข ยกเลิก ปิด และกลับสถานะได้จากเส้น
เครื่องหมายการจับคู่การเทรดเหตุผลและกำไรหรือขาดทุนใน executionFill
หน้าต่างส่งคำสั่งการเทรดปริมาณ ประเภท ตัดขาดทุนและทำกำไร อายุคำสั่ง ตรวจสอบขณะพิมพ์ รวมถึงช่วงราคา ราคาเพดาน ราคาพื้น และหน่วยการซื้อขายของตลาด
แผงบัญชีการเทรดสถานะพร้อมกำไรขาดทุนสด คำสั่งที่รออยู่ และการจับคู่
สัญญาณและโซนการเทรดการเทรดคีย์สไตล์ markers.*, tradeZones.*
แบ็กเทสต์และตัวชี้วัดความเสี่ยงการเทรด@tradecanvas/analytics: ค่าคอมมิชชัน สลิปเพจ Sharpe, Sortino, Calmar, drawdown
แจ้งเตือนได้มากกว่าระดับราคาการแจ้งเตือนและการเล่นซ้ำเส้นตัดเส้น ราคาขยับ N% ใน N แท่ง เมื่อแท่งปิด พร้อมวันหมดอายุ
เล่นซ้ำแท่งเทียนแบบขั้นละเอียดกว่าการแจ้งเตือนและการเล่นซ้ำกรอบเวลาใหญ่เล่นซ้ำจากแท่งที่เล็กกว่า
เทรดจำลองระหว่างเล่นซ้ำการแจ้งเตือนและการเล่นซ้ำคำสั่งจับคู่ที่ราคาที่เล่นซ้ำ
เล่นซ้ำทั้งกริดกราฟการแจ้งเตือนและการเล่นซ้ำทุกกราฟเดินไปพร้อมกัน
การเล่นซ้ำสำหรับแอปพลิเคชันการแจ้งเตือนและการเล่นซ้ำstartTime, hideHistory, duration, เครื่องหมายปรากฏขณะเล่น, replayComplete
กริดวิดเจ็ตที่ซิงค์กันพื้นที่ทำงานสูงสุด 6 ตัว ใช้สัญลักษณ์ กรอบเวลา เป้าเล็ง เวลา และภาพวาดร่วมกัน
เลย์เอาต์ที่ตั้งชื่อบนที่เก็บข้อมูลของคุณเองพื้นที่ทำงานบันทึก เปิด เปลี่ยนชื่อ บันทึกอัตโนมัติ; LayoutStorage สำหรับเซิร์ฟเวอร์
เลิกทำและทำซ้ำได้ทุกอย่างพื้นที่ทำงานภาพวาด อินดิเคเตอร์ การตั้งค่า และประเภทกราฟ; recordUndo
เมนูคลิกขวาตามพื้นที่พื้นที่ทำงานภาพวาด พื้นที่กราฟ แผง แกนราคา แกนเวลา
รายการเฝ้าดูพื้นที่ทำงานหลายรายการ จัดลำดับด้วยการลาก
อีเวนต์สำหรับแอปโฮสต์พื้นที่ทำงานsymbolChange, timeframeChange, ordersChange, executionFill, styleChange และอื่น ๆ
สามหน้าตาของวิดเจ็ตการปรับแต่งStudio, Terminal, Capsule; ui และ setUI; ตัวแปร CSS --tcw-*
หน้าตากราฟตามคีย์การปรับแต่งapplyOverrides บน 101 คีย์ที่มีไทป์กำกับ ทั้งชั้นของโฮสต์และชั้นของผู้ใช้
การตั้งค่าที่เข้าถึงทุกคีย์การปรับแต่งแท็บสไตล์สำหรับประเภทกราฟที่แสดงอยู่ และแท็บการเทรด
สวิตช์ฟีเจอร์ 112 ตัวการปรับแต่งfeatures, setFeatures, isFeatureOn; เปลี่ยนได้ขณะทำงาน
ชิ้นส่วนของคุณเองในวิดเจ็ตการปรับแต่งปุ่มและดรอปดาวน์บนแถบเครื่องมือ ปุ่มแถบด้านข้าง รายการสถานะ สล็อต รายการเมนู
ปุ่มลัดของคุณเองการปรับแต่งaddHotkey ตามเลย์เอาต์แป้นพิมพ์
วิดเจ็ตใน 30 ภาษาภาษาและการเข้าถึงอาหรับ ฮีบรู และเปอร์เซียแสดงจากขวาไปซ้าย
โปรแกรมอ่านหน้าจอและคีย์บอร์ดภาษาและการเข้าถึงสรุปกราฟ อ่านแท่งทีละแท่ง ใช้กล่องโต้ตอบด้วยคีย์บอร์ด
เอกสารหกภาษา เว็บไซต์นี้สิบสี่ภาษาภาษาและการเข้าถึงEnglish, Tiếng Việt, 简体中文, 日本語, 한국어, Español
คอมโพเนนต์ React, Vue และ Svelteนักพัฒนาprops แบบ reactive: overrides, indicators, features
ปลั๊กอินนักพัฒนาอินดิเคเตอร์ เครื่องมือวาด ประเภทกราฟ และโอเวอร์เลย์; overlayScale และ getPriceStep สำหรับวาดบนตารางราคา
เอกสารสำหรับเอเจนต์เขียนโค้ดนักพัฒนาllms.txt, llms-full.txt และสกิลสำหรับเอเจนต์

ข้อจำกัดที่ทราบ

  • Canvas 2D ยังคงเป็นตัวเรนเดอร์เริ่มต้นจนกว่า WebGL จะได้ลองใช้บนอุปกรณ์มากขึ้น และยังไม่ได้วัดอัตราเฟรมของ WebGL บน Safari และจอ 5K
  • ที่อัตราส่วนพิกเซล 2 บนกราฟ 2560×1400 การคอมโพสิตของเบราว์เซอร์อย่างเดียวก็ใช้เวลาราว 23 ms บนกราฟิกในตัว เฟรม WebGL ตรงนั้นจึงเฉลี่ย 29 ms
  • กรอบเวลาแบบ tick สร้างจากรายการซื้อขายล่าสุดที่ฟีดส่งมา จึงโหลดประวัติ tick ที่เก่ากว่านั้นไม่ได้
  • วอลุ่มเดลตาและ CVD ประมาณจากแท่งราคา ไม่ได้มาจากฝั่งของแต่ละรายการซื้อขาย
  • ในหน้าเดียววาดด้วย WebGL พร้อมกันได้สูงสุด 8 กราฟ ที่เหลือวาดด้วย Canvas 2D