vnstock-js

vnstock-js

Tài LiệuDùng Với AIVí DụBài ViếtDemo
k

© Copyright 2026

Giới Thiệu
Cài Đặt
Hướng Dẫn Sử Dụng Nhanh
Quy Ước & Đơn Vịv2.0
Dùng Với AIv2.0
Kiến Trúc
Danh Sách Hàm
Nâng Cấp Từ v1v2.0
CLI
Lịch Sử Phiên Bản
Câu Hỏi Thường Gặp
Cơ Bản
Bảng Giá - Prices
Lịch Sử Giá - History
Danh Mục Mã - Symbols
Tìm Kiếm - Search
Tài Chính - Financials
Thị Trường - Marketv1.5
Sàng Lọc - Screening
Chỉ Báo & Pattern
AI Contextv1.4
Danh Mục Đầu Tưv2.0
Theo Dõi & Cảnh Báov2.0
Backtest & Phiên Tương Tựv2.0
Trình Duyệt & Proxyv2.0
Lịch Giao Dịch - Calendar
Vàng, Tỷ Giá, Tin Tức
MCP Serverv1.4
Watchlistv1.4
Bar
Quote
Tick
TopMover
CompanyProfile
ScreenRow
GoldQuote & FxRate
  1. Tài Liệu
  2. Getting Started
  3. Quick Start Guide

Hướng Dẫn Sử Dụng Nhanh

Những lời gọi hay dùng nhất của vnstock-js 2.x trong một trang.

Xem .md

Cổ phiếu

import { vn } from "vnstock-js";

const fpt = vn.stock("FPT"); // tạo đồng bộ, chưa gọi mạng

const quote = await fpt.price();                              // giá, trần, sàn, tham chiếu, khối lượng, giá trị
const daily = await fpt.history("6mo");                       // nến ngày, giá bằng đồng
const weekly = await fpt.history({ from: "2025-01-01", interval: "1w" });
const profile = await fpt.company();
const holders = await fpt.shareholders();
const income = await fpt.financials("income", { period: "quarter" });

console.log(quote.price, quote.changePct, daily.at(-1)?.close, weekly.length, profile.industry, holders.length, income.rows.length);

Mã sai không làm hỏng lúc tạo handle; lời gọi đầu tiên mới báo lỗi kèm gợi ý, ví dụ vn.stock("FTP") nhận Did you mean "FPT"?.

Chỉ số và thị trường

import { vn } from "vnstock-js";

const vnindex = await vn.index("VNINDEX").history("1y"); // điểm
const overview = await vn.market({ exchange: "HOSE" });   // chỉ số, thanh khoản, độ rộng, khối ngoại
const vn30 = await vn.prices({ group: "VN30" });
const { gainers, losers } = await vn.topMovers({ limit: 5 });

console.log(vnindex.at(-1)?.close, overview.liquidity.value, vn30.length, gainers, losers);

Sàng lọc

import { vn } from "vnstock-js";

const rows = await vn.screen({
  group: "VN30",
  where: { pe: { lt: 15 }, roe: { gt: 0.15 } }, // ROE là phân số: 0.15 = 15%
  sort: "-roe",
  limit: 10,
});

Chỉ báo

import { vn } from "vnstock-js";
import { sma, rsi, supportResistance } from "vnstock-js/indicators";

const bars = await vn.stock("FPT").history("1y");
const sma20 = sma(bars, { period: 20 });
const rsi14 = rsi(bars);
const zones = supportResistance(bars);

Theo dõi giá

import { vn } from "vnstock-js";

const stop = vn.watch(["FPT", "VCB"], (t) => console.log(t.symbol, t.price, t.changePct));
setTimeout(stop, 60000); // nhớ dừng, nếu không tiến trình chạy mãi

Tiếp theo

  • Quy ước & đơn vị: đọc trước khi tính toán với số liệu.
  • Danh sách hàm: toàn bộ API.
  • Trình duyệt & proxy: dùng trong React, Next.js client component.
PreviousCài Đặt
NextQuy Ước & Đơn Vị

Nội Dung

Cổ phiếuChỉ số và thị trườngSàng lọcChỉ báoTheo dõi giáTiếp theo