Chiến lược này tạo ra các vị trí dài hoặc ngắn dựa trên mức hỗ trợ và kháng cự được tính toán từ giá cao nhất, thấp nhất và đóng cửa của ngày giao dịch trước. Nó đi dài khi giá vượt qua mức kháng cự trên R1 và đi ngắn khi giá vượt qua mức hỗ trợ dưới S1. Chiến lược thuộc về chiến lược điểm pivot năng động.
Tính toán mức hỗ trợ S1, mức kháng cự R1 và điểm pivot vPP của ngày hiện tại dựa trên giá cao nhất xHigh, giá thấp nhất xLow và giá đóng xClose của ngày giao dịch trước đó.
vPP = (xHigh+xLow+xClose) / 3
vR1 = vPP+(vPP-xLow)
vS1 = vPP-(xHigh - vPP)
Xác định xem giá có vượt qua vR1 hoặc vS1 không. Đi dài nếu giá vượt qua vR1 và đi ngắn nếu giá vượt qua dưới vS1. POS ghi lại hướng dài hoặc ngắn.
pos = iff(close > vR1, 1, If ((close < vS1, -1, nz(pos[1], 0)))
possig ghi lại hướng giao dịch thực tế. Nếu giao dịch ngược được bật với reverse=true, tín hiệu giao dịch sẽ bị đảo ngược.
Đi dài khi vR1 bị hỏng và đi ngắn khi vS1 bị hỏng theo tín hiệu possig.
Quản lý rủi ro:
Chiến lược này tạo ra các giao dịch dài hoặc ngắn dựa trên mức hỗ trợ và kháng cự động của giá phá vỡ. Logic là đơn giản để hiểu và thực hiện trong khi có thể xác định hiệu quả các biến đổi xu hướng. Tuy nhiên, rủi ro tồn tại và tối ưu hóa thêm với các chỉ số bổ sung là cần thiết để tạo ra các tín hiệu giao dịch đáng tin cậy hơn. Nhìn chung, chiến lược phục vụ tốt như một chỉ số hỗ trợ hoặc một khối xây dựng cơ bản trong các hệ thống giao dịch định lượng.
//@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 14/06/2018 // This Pivot points is calculated on the current day. // Pivot points simply took the high, low, and closing price from the previous period and // divided by 3 to find the pivot. From this pivot, traders would then base their // calculations for three support, and three resistance levels. The calculation for the most // basic flavor of pivot points, known as ‘floor-trader pivots’, along with their support and // resistance levels. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Dynamic Pivot Point Backtest", shorttitle="Dynamic Pivot Point", overlay = true) reverse = input(false, title="Trade reverse") xHigh = request.security(syminfo.tickerid,"D", high[1]) xLow = request.security(syminfo.tickerid,"D", low[1]) xClose = request.security(syminfo.tickerid,"D", close[1]) vPP = (xHigh+xLow+xClose) / 3 vR1 = vPP+(vPP-xLow) vS1 = vPP-(xHigh - vPP) pos = iff(close > vR1, 1, iff(close < vS1, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(vS1, color=#ff0000, title="S1", style = circles, linewidth = 1) plot(vR1, color=#009600, title="R1", style = circles, linewidth = 1)