Ngân hàng câu hỏi của chương

Câu hỏi: AIE301m - Phần 4: Chiến lược giao dịch định lượng và TensorFlow

25 câu trắc nghiệm kèm lời giải của môn AIE301m - Ứng dụng trí tuệ nhân tạo cho giao dịch, xếp theo thứ tự nhập vào ngân hàng.

Danh sách câu hỏi

20/25 câuCòn 5
ADynamic stop losses reduce the expected risk of your strategy.
BDynamic stop losses guarantee that your strategy will not make a loss even if it is stopped out.
CDynamic stop losses increase your expected returns from a trading strategy.
Lời giải
Đáp án đúng: "Dynamic stop losses reduce the expected risk of your strategy.". Dừng lỗ động (dynamic stop loss, kiểu trailing stop) dời mức dừng theo giá khi lệnh có lãi hoặc theo độ biến động, ví dụ một bội số của ATR, nên mức lỗ tối đa thu hẹp dần và phần lãi đã có được khoá lại; dừng lỗ tĩnh thì đứng yên ở một mức cố định từ lúc vào lệnh. Lợi ích chính vì vậy là giảm rủi ro kỳ vọng của chiến lược. "Dynamic stop losses guarantee that your strategy will not make a loss even if it is stopped out." sai vì mức dừng vẫn có thể nằm dưới giá vào lệnh, và trượt giá hay khoảng trống giá (gap) có thể khiến lệnh khớp tệ hơn mức dừng, nên không có gì bảo đảm không lỗ. "Dynamic stop losses increase your expected returns from a trading strategy." sai vì dừng lỗ động có thể cắt lệnh sớm khi giá chỉ dao động bình thường, làm mất phần tăng về sau; tác động của nó lên lợi suất kỳ vọng không chắc chắn, thứ được cải thiện rõ ràng là mức rủi ro.
Mở trang câu hỏi này →
A1
B2
C3
DN
Lời giải
Đáp án đúng: "N". Tensor là mảng nhiều chiều có thể có số chiều (rank, hạng) bất kỳ: hạng 0 là một số vô hướng, hạng 1 là vectơ, hạng 2 là ma trận, và tổng quát là N chiều, ví dụ một lô ảnh màu trong TensorFlow là tensor 4 chiều gồm số mẫu, chiều cao, chiều rộng và kênh màu. Vì vậy câu hỏi về số chiều chung của tensor phải trả lời bằng N. "1" chỉ đúng cho tensor hạng 1, tức vectơ, là một trường hợp riêng. "2" chỉ đúng cho ma trận, tensor hạng 2, cũng là trường hợp riêng. "3" chỉ đúng cho tensor hạng 3 như một chuỗi thời gian nhiều đặc trưng xếp theo lô, không mô tả được vô hướng hay tensor 4, 5 chiều nên không phải định nghĩa tổng quát.
Mở trang câu hỏi này →
AHFT strategies are primarily based on long-term market trends.
BHFT requires sub-millisecond order creation and submission.
CHFT does not involve any statistical analysis.
DHFT is only used by retail investors.
Lời giải
Đáp án đúng: "HFT requires sub-millisecond order creation and submission.". Giao dịch tần suất cao (high-frequency trading) kiếm lợi từ chênh lệch giá rất nhỏ và tồn tại rất ngắn, nên lợi thế cạnh tranh nằm ở tốc độ: lệnh phải được tạo và gửi trong thời gian dưới một phần nghìn giây, nhờ đặt máy chủ cạnh sàn (co-location) và hạ tầng độ trễ thấp. "HFT strategies are primarily based on long-term market trends." sai vì HFT nắm giữ vị thế trong vài giây hoặc ngắn hơn, không đặt cược vào xu hướng dài hạn. "HFT does not involve any statistical analysis." sai vì các chiến lược HFT như tạo lập thị trường hay chênh lệch thống kê dựa nặng vào mô hình thống kê trên dữ liệu sổ lệnh. "HFT is only used by retail investors." sai vì HFT do các công ty giao dịch độc quyền và quỹ có hạ tầng đắt tiền thực hiện, nhà đầu tư cá nhân hầu như không thể tham gia.
Mở trang câu hỏi này →
4What is TensorFlow?4 lựa chọn
AA machine learning library
BA programming language
CA deep learning framework
DA database management system
Lời giải
Đáp án đúng: "A machine learning library". TensorFlow là thư viện mã nguồn mở do Google phát triển cho học máy nói chung: nó cung cấp tensor, phép tính khả vi, GradientTape, tf.data, Keras và công cụ triển khai, dùng được cho cả hồi quy, phân loại, mô hình xác suất chứ không chỉ mạng sâu. Cần nói thẳng rằng "A deep learning framework" là cách gọi rất thường gặp và không vô lý, vì TensorFlow nổi tiếng nhất nhờ huấn luyện mạng nơ-ron sâu; tuy vậy cách gọi đó thu hẹp phạm vi của nó, còn thư viện học máy là cách gọi bao quát và đúng hơn với những gì TensorFlow tự mô tả, nên vẫn chọn đáp án đã nêu. "A programming language" sai vì TensorFlow chạy trên ngôn ngữ chủ như Python, C++ hay JavaScript, bản thân nó không phải ngôn ngữ. "A database management system" sai vì TensorFlow không lưu trữ hay truy vấn dữ liệu theo kiểu cơ sở dữ liệu; việc đó thuộc về hệ như BigQuery, còn TensorFlow chỉ đọc dữ liệu để tính toán và huấn luyện.
Mở trang câu hỏi này →
AA graph that represents the structure of a neural network
BA graph that represents the mathematical operations performed by a neural network
CA graph that represents the input and output of a neural network
DA graph that represents the weights and biases of a neural network
Lời giải
Đáp án đúng: "A graph that represents the mathematical operations performed by a neural network". Trong TensorFlow, đồ thị tính toán (computation graph) là đồ thị có hướng mà mỗi nút là một phép toán (operation) như nhân ma trận, cộng, hàm kích hoạt, còn mỗi cạnh là tensor chảy giữa các phép toán; nhờ đồ thị này TensorFlow tối ưu, song song hoá và tính đạo hàm tự động. "A graph that represents the structure of a neural network" chỉ mô tả kiến trúc các lớp ở mức khái niệm, chưa nói tới các phép toán cụ thể. "A graph that represents the input and output of a neural network" quá hẹp vì đồ thị còn gồm mọi phép toán trung gian. "A graph that represents the weights and biases of a neural network" sai vì trọng số và độ lệch chỉ là các biến tham gia vào phép toán, không phải nội dung chính của đồ thị.
Mở trang câu hỏi này →
AFalse
BTrue
Lời giải
Đáp án đúng: "True". TensorFlow có nhánh TensorFlow Lite chuyên chạy suy luận (inference, tức dùng mô hình đã huấn luyện để dự đoán) ngay trên thiết bị như điện thoại Android, iOS, máy tính nhúng và cả vi điều khiển. Mô hình được chuyển sang định dạng gọn hơn, có thể lượng tử hoá để nhẹ và nhanh, rồi chạy cục bộ nên độ trễ thấp, không cần mạng và dữ liệu không phải gửi về máy chủ. Nhờ cơ chế delegate, cùng một mô hình có thể tận dụng nhiều loại phần cứng tăng tốc như CPU, GPU, bộ xử lý tín hiệu số hay Edge TPU, đúng với ý "available for a variety of hardware" trong phát biểu. "False" sai vì suy luận trên thiết bị di động và hỗ trợ đa phần cứng là tính năng chính thức của hệ sinh thái TensorFlow, không phải điều nó thiếu.
Mở trang câu hỏi này →
7Basic trading model includes:6 lựa chọn
AParameters
BEntry signal
CProfit exit
DStop-loss
ETime-out
FAll of the above
Lời giải
Đáp án đúng: "All of the above". Một mô hình giao dịch cơ bản phải quy định đủ vòng đời của lệnh: "Parameters" là các tham số như chu kỳ chỉ báo, ngưỡng, khối lượng mà ta tinh chỉnh khi backtest; "Entry signal" là tín hiệu vào lệnh, điều kiện để mở vị thế; "Profit exit" là mức chốt lời; "Stop-loss" là mức cắt lỗ giới hạn thua lỗ của mỗi lệnh; "Time-out" là thời hạn tối đa giữ lệnh, hết hạn thì đóng vị thế dù chưa chạm mức chốt lời hay cắt lỗ. Mỗi thành phần đều đúng nhưng chỉ là một mảnh, thiếu bất kỳ cái nào thì chiến lược không xác định được khi nào vào, khi nào ra hay ra theo điều kiện nào, nên chọn riêng lẻ một thành phần là chưa đầy đủ; phương án tổng hợp mới mô tả trọn mô hình.
Mở trang câu hỏi này →
8Syntax: "tf.data.Dataset" allows:4 lựa chọn
AConfigure the way the data is fed into a model with a number of chaining methods
BPreprocess data in parallel
CCreate data pipelines
DAll is correct
Lời giải
Đáp án đúng: "All is correct". tf.data.Dataset là API của TensorFlow để dựng đường ống dữ liệu đầu vào, và cả ba khả năng nêu ra đều đúng. "Configure the way the data is fed into a model with a number of chaining methods" đúng vì Dataset cho nối chuỗi các phương thức như shuffle, batch, repeat, prefetch để quyết định dữ liệu được xáo, chia lô và đưa vào model.fit ra sao. "Preprocess data in parallel" đúng vì phương thức map nhận tham số num_parallel_calls (có thể đặt tf.data.AUTOTUNE) để chạy hàm tiền xử lý song song trên nhiều luồng, còn prefetch cho chuẩn bị lô kế tiếp trong lúc mô hình đang huấn luyện lô hiện tại. "Create data pipelines" đúng vì đó chính là mục đích của API: tạo nguồn từ tensor, tệp CSV hay TFRecord rồi ghép các bước biến đổi thành một đường ống hoàn chỉnh, đọc được cả dữ liệu lớn hơn bộ nhớ. Vì ba ý đều đúng, chọn riêng một ý là thiếu, nên đáp án tổng hợp là đầy đủ nhất.
Mở trang câu hỏi này →
AFalse
BTrue
Lời giải
Đáp án đúng: "True". Đồ thị tính toán (computation graph) của TensorFlow mô tả phép tính dưới dạng các nút toán tử và cạnh tensor, độc lập với ngôn ngữ và phần cứng, nên có thể lưu lại (ví dụ dạng SavedModel) rồi chạy trên CPU, GPU, TPU, máy chủ khác hay chuyển sang thiết bị di động qua TensorFlow Lite, trình duyệt qua TensorFlow.js mà không cần mã Python gốc; runtime sẽ đặt từng phép tính lên thiết bị phù hợp. Tính khả chuyển này là một trong những lý do chính để TensorFlow dùng đồ thị, bên cạnh khả năng tối ưu và song song hoá. "False" sai vì nó phủ nhận chính ưu điểm thiết kế đó: đồ thị không gắn cứng với thiết bị nơi nó được tạo ra.
Mở trang câu hỏi này →
10Exogenous trading rules include:4 lựa chọn
AMonetary policy
BGeopolitical factors
CDerivatives markets
DAll of the above
Lời giải
Đáp án đúng: "All of the above". Quy tắc giao dịch ngoại sinh (exogenous) dựa trên thông tin nằm ngoài chuỗi giá và khối lượng của chính tài sản đang giao dịch. "Monetary policy" thuộc nhóm này vì quyết định lãi suất, nới lỏng hay thắt chặt của ngân hàng trung ương là thông tin vĩ mô bên ngoài tác động lên giá. "Geopolitical factors" như xung đột, bầu cử, lệnh trừng phạt cũng là sự kiện bên ngoài thị trường của tài sản. "Derivatives markets" là nguồn ngoại sinh khi ta dùng dữ liệu quyền chọn, hợp đồng tương lai như biến động hàm ý hay cấu trúc kỳ hạn để ra quyết định trên thị trường cơ sở. Cả ba đều đúng nhưng mỗi cái chỉ là một ví dụ, nên phương án tổng hợp mới đầy đủ; ngược lại, quy tắc nội sinh chỉ dùng giá và khối lượng của chính tài sản.
Mở trang câu hỏi này →
AAsset and market prices tend to have momentum so that stocks whose prices are in an up trends tend to increase in value and those in a downtrend tend to decrease in value.
BAsset prices follow a random walk with equal probabilities of increasing and decreasing
CMarkets are efficient and fully incorporate all available information (both public and private).
DFundamental data such as historic earning and sales growth are already fully reflected in the current market price and so have no predictive power.
Lời giải
Đáp án đúng gồm hai ý: "Asset and market prices tend to have momentum so that stocks whose prices are in an up trends tend to increase in value and those in a downtrend tend to decrease in value." và "Fundamental data such as historic earning and sales growth are already fully reflected in the current market price and so have no predictive power.". Quy tắc nội sinh (endogenous trading rule) chỉ dùng lịch sử giá và khối lượng, nên cần hai lý lẽ: giá có quán tính (momentum) nên xu hướng quá khứ có sức dự báo, và dữ liệu cơ bản đã nằm sẵn trong giá nên thêm nó vào cũng không có lợi. "Asset prices follow a random walk with equal probabilities of increasing and decreasing" sai vì nếu giá là bước ngẫu nhiên thì lịch sử giá không dự báo được gì, phủ nhận chính quy tắc nội sinh. "Markets are efficient and fully incorporate all available information (both public and private)." là dạng hiệu quả mạnh, khi đó mọi chiến lược, kể cả dựa trên giá quá khứ, đều không tạo được lợi nhuận vượt trội.
Mở trang câu hỏi này →
12What is a variable in TensorFlow?4 lựa chọn
AA fixed value that is used in a neural network
BA data structure that holds the input data for a neural network
CA data structure that holds the weights and biases of a neural network
DA fixed value that is used to compute the output of a neural network
Lời giải
Đáp án đúng: "A data structure that holds the weights and biases of a neural network". Trong TensorFlow, tf.Variable là tensor có trạng thái, giá trị được giữ qua các lần chạy và có thể thay đổi bằng assign hay bởi bộ tối ưu; vì vậy nó dùng để chứa tham số học được là trọng số và độ lệch (bias), được cập nhật sau mỗi bước lan truyền ngược. "A fixed value that is used in a neural network" mô tả hằng số tf.constant, thứ không đổi được, ngược với biến. "holds the input data for a neural network" sai vì dữ liệu đầu vào thường được đưa vào qua tensor thường, tf.data hay placeholder thời TensorFlow 1, không cần lưu trạng thái để cập nhật. "A fixed value that is used to compute the output" cũng là hằng số, trong khi biến tồn tại chính là để giá trị của nó thay đổi trong quá trình huấn luyện.
Mở trang câu hỏi này →
AInteger variable
BString variable
CFloat variable
DIt will give an error
Lời giải
Đáp án đúng: "String variable". Trong Python, giá trị đặt trong cặp nháy đơn hay nháy kép là chuỗi ký tự, nên câu lệnh N = '3.0' tạo ra một chuỗi gồm ba ký tự 3, dấu chấm và 0; gọi type(N) sẽ trả về str. Python định kiểu động theo giá trị được gán chứ không theo hình dáng của nội dung bên trong chuỗi. "Integer variable" sai vì số nguyên phải viết không có nháy và không có phần thập phân, như N = 3; thậm chí int('3.0') còn báo ValueError vì chuỗi có dấu chấm. "Float variable" sai vì chỉ N = 3.0 không có nháy mới là số thực; muốn có số thực từ chuỗi này phải gọi float(N). "It will give an error" sai vì gán một chuỗi cho biến là câu lệnh hoàn toàn hợp lệ, chạy không lỗi.
Mở trang câu hỏi này →
AVary the type of entry signal, profit exit levels, stop loss levels and trade completion time limits in backtesting with the objective of maximizing risk adjusted return (Sharpe ratio) within your tolerance for PnL volatility and maximum drawdown.
BVary the the type of entry signal and profit exit levels in backtesting with the objective of maximizing profit.
CVary the the type of entry signal and profit exit levels in backtesting with the objective of maximizing risk adjusted return (Sharpe ratio).
Lời giải
Đáp án đúng: "Vary the type of entry signal, profit exit levels, stop loss levels and trade completion time limits in backtesting with the objective of maximizing risk adjusted return (Sharpe ratio) within your tolerance for PnL volatility and maximum drawdown.". Tối ưu mô hình giao dịch là dùng backtest như một bài toán tìm tham số: thay đổi đồng thời đủ bốn tham số gồm tín hiệu vào lệnh, mức chốt lời, mức cắt lỗ và thời hạn giữ lệnh, rồi chọn tổ hợp có lợi suất điều chỉnh theo rủi ro, tức tỉ số Sharpe, cao nhất mà vẫn nằm trong giới hạn chịu đựng về độ biến động lãi lỗ (PnL volatility) và mức sụt giảm tối đa (maximum drawdown). "in backtesting with the objective of maximizing profit." thiếu hai tham số cắt lỗ và thời hạn, lại tối đa hoá lợi nhuận thô nên dễ chọn ra cấu hình rủi ro rất cao. "profit exit levels in backtesting with the objective of maximizing risk adjusted return (Sharpe ratio)." đã dùng thước đo đúng là Sharpe nhưng vẫn bỏ sót cắt lỗ, thời hạn và không đặt ràng buộc về biến động hay sụt giảm, nên chưa tận dụng hết bốn tham số của mô hình cơ bản.
Mở trang câu hỏi này →
15Choose the RIGHT statement:4 lựa chọn
ATensorFlow is an closed-source, high-performance library for numerical computation that uses directed graphs
BTensorFlow is an open-source, low-performance library for numerical computation that uses directed graphs
CTensorFlow is an open-source, high-performance library for numerical computation that uses directed graphs
DTensorFlow is an closed-source, low-performance library for numerical computation that uses directed graphs
Lời giải
Đáp án đúng: "TensorFlow is an open-source, high-performance library for numerical computation that uses directed graphs". TensorFlow do Google phát triển và phát hành mã nguồn mở năm 2015, là thư viện tính toán số hiệu năng cao: phép tính được biểu diễn thành đồ thị có hướng, mỗi nút là một phép toán, mỗi cạnh là tensor chảy giữa các phép toán, nhờ đó có thể tối ưu và chạy song song trên CPU, GPU, TPU. "TensorFlow is an closed-source, high-performance library for numerical computation that uses directed graphs" sai ở chỗ closed-source, vì mã nguồn TensorFlow công khai theo giấy phép Apache 2.0. "TensorFlow is an open-source, low-performance library for numerical computation that uses directed graphs" sai ở chỗ low-performance, vì lõi viết bằng C++ và tận dụng phần cứng tăng tốc. "TensorFlow is an closed-source, low-performance library for numerical computation that uses directed graphs" sai ở cả hai điểm.
Mở trang câu hỏi này →
AFalse
BTrue
Lời giải
Đáp án đúng: "True". Thoát lệnh theo thời gian (time-out exit, còn gọi là time stop) đóng vị thế khi đã giữ đủ một khoảng thời gian định trước hoặc tới cuối phiên, bất kể giá đang ở đâu, nên nó dựa trên thời gian chứ không dựa trên mức giá như dừng lỗ hay chốt lời. Nhà giao dịch trong ngày (day trader) dùng nó nhiều nhất vì họ đóng hết vị thế trước giờ đóng cửa để không phải ôm rủi ro qua đêm. Nếu giữ vị thế qua đêm thay vì thoát đúng giờ, tin tức ngoài giờ có thể tạo khoảng trống giá (gap) lúc mở cửa hôm sau, ảnh hưởng lớn tới lợi nhuận; vì vậy chọn có thoát theo thời gian hay không tác động mạnh tới kết quả giao dịch. "False" sai vì cả ba ý trong phát biểu đều khớp với cách quy tắc thoát lệnh theo thời gian hoạt động.
Mở trang câu hỏi này →
AFalse
BTrue
Lời giải
Đáp án đúng: "False". Tập dữ liệu (dataset) có thể được tạo từ nhiều định dạng khác nhau: trong TensorFlow, tf.data đọc được tệp CSV, tệp văn bản, TFRecord, mảng NumPy hay tensor trong bộ nhớ; trên Google Cloud, dataset cho AutoML hay Vertex AI nhận tệp CSV, JSON Lines, ảnh trong Cloud Storage hoặc bảng BigQuery. Vì vậy phát biểu rằng dataset chỉ tạo được từ một định dạng là sai. Chọn "True" sẽ trái với thực tế các API nhập dữ liệu vốn được thiết kế để hỗ trợ nhiều nguồn và nhiều định dạng.
Mở trang câu hỏi này →
AFalse
BTrue
Lời giải
Đáp án đúng: "True". Lớp Dataset của tf.data không chỉ để nạp (ingest) dữ liệu vào bộ nhớ; giá trị thật của nó là dựng cả đường ống biến đổi: map để tiền xử lý từng mẫu, có thể chạy song song, filter để lọc, shuffle để xáo trộn, batch để chia lô, window để tạo cửa sổ trượt cho chuỗi thời gian giá, cache để giữ dữ liệu đã xử lý và prefetch để chuẩn bị lô kế tiếp trong lúc mô hình đang huấn luyện. Các bước này nối chuỗi với nhau và đưa thẳng vào model.fit, giúp xử lý được cả dữ liệu lớn hơn bộ nhớ mà vẫn giữ GPU bận rộn. "False" không đúng vì nó coi Dataset chỉ là công cụ đọc dữ liệu, bỏ qua toàn bộ khả năng biến đổi, tối ưu hiệu năng và ghép đường ống vốn là lý do chính để dùng tf.data thay cho việc nạp mảng NumPy thủ công.
Mở trang câu hỏi này →
ATechnical analysts
BStatistical arbitrage traders
CStrategists
DQuantitative trading groups
Lời giải
Đáp án đúng: "Technical analysts". Quy tắc giao dịch nội sinh (endogenous) được suy ra từ chính dữ liệu của thị trường đang giao dịch, chủ yếu là giá và khối lượng, ví dụ đường trung bình động cắt nhau, RSI hay mức hỗ trợ kháng cự, và đó đúng là công cụ đặc trưng của nhà phân tích kỹ thuật; ngược lại, quy tắc ngoại sinh dựa vào dữ liệu bên ngoài như cơ bản doanh nghiệp hay vĩ mô. "Quantitative trading groups" là lựa chọn dễ gây tranh cãi vì nhóm định lượng cũng xây quy tắc từ giá, nhưng họ dùng cả quy tắc nội sinh lẫn ngoại sinh nên không phải nguồn đặc trưng của riêng quy tắc nội sinh. "Statistical arbitrage traders" tập trung vào quan hệ thống kê giữa nhiều tài sản và thường kết hợp cả dữ liệu ngoài, không gắn riêng với quy tắc nội sinh. "Strategists" là chiến lược gia thường dựa trên phân tích vĩ mô và cơ bản, tức thông tin ngoại sinh.
Mở trang câu hỏi này →
AStatistical arbitrage
BExecution strategies
CMachine learning models
DLong-term asset holding
Lời giải
Đáp án đúng: "Execution strategies". Bên bán (sell-side) như ngân hàng đầu tư và công ty môi giới phục vụ khách hàng bằng cách khớp lệnh cho họ, nên chiến lược chủ đạo là chiến lược thực thi (execution strategies) như VWAP, TWAP hay giảm tác động thị trường khi chia nhỏ lệnh lớn. "Statistical arbitrage" là chiến lược tìm lợi nhuận từ sai lệch giá tạm thời, đặc trưng của bên mua (buy-side) như quỹ phòng hộ. "Machine learning models" là công cụ mà cả hai bên đều dùng, không phải một chiến lược riêng của bên bán. "Long-term asset holding" là cách đầu tư của quỹ hưu trí, quỹ tương hỗ thuộc bên mua.
Mở trang câu hỏi này →