SwingTrade VWAP Strategy[TiamatCrypto]V1.1This Pine Script® code creates a trading strategy called "SwingTrade VWAP Strategy V1.1." This strategy incorporates various trading tools, such as VWAP (Volume Weighted Average Price), ADX (Average Directional Index), and volume signals. Below is an explanation of the components and logic within the script:
### Overview of Features
- **VWAP:** A volume-weighted moving average that assesses price trends relative to the VWAP level.
- **ADX:** A trend strength indicator that helps confirm the strength of bullish or bearish trends.
- **Volume Analysis:** Leverages volume data to gauge momentum and identify volume-weighted buy/sell conditions.
- **Dynamic Entry/Exit Signals:** Combines the above indicators to produce actionable buy/sell or exit signals.
- **Customizable Inputs:** Inputs for tuning parameters like VWAP period, ADX thresholds, and volume sensitivity.
---
### **Code Breakdown**
#### **Input Parameters**
The script begins by defining several user-configurable variables under groups. These include indicators' on/off switches (`showVWAP`, `enableADX`, `enableVolume`) and input parameters for VWAP, ADX thresholds, and volume sensitivity:
- **VWAP Period and Threshold:** Controls sensitivity for VWAP signal generation.
- **ADX Settings:** Allows users to configure the ADX period and strength threshold.
- **Volume Ratio:** Detects bullish/bearish conditions based on relative volume patterns.
---
#### **VWAP Calculation**
The script calculates VWAP using the formula:
\
Where `P` is the typical price (`(high + low + close)/3`) and `V` is the volume.
- It resets cumulative values (`sumPV` and `sumV`) at the start of each day.
- Delta percentage (`deltaPercent`) is calculated as the percentage difference between the close price and the VWAP.
---
#### **Indicators and Signals**
1. **VWAP Trend Signals:**
- Identifies bullish/bearish conditions based on price movement (`aboveVWAP`, `belowVWAP`) and whether the price is crossing the VWAP level (`crossingUp`, `crossingDown`).
- Also detects rising/falling delta changes based on the VWAP threshold.
2. **ADX Calculation:**
- Calculates the directional movement (`PlusDM`, `MinusDM`) and smoothed values for `PlusDI`, `MinusDI`, and `ADX`.
- Confirms strong bullish/bearish trends when ADX crosses the defined threshold.
3. **Volume-Based Signals:**
- Evaluates the ratio of bullish volume (when `close > VWAP`) to bearish volume (when `close < VWAP`) over a specified lookback period.
---
#### **Trade Signals**
The buy and sell signals are determined by combining conditions from the VWAP, ADX, and volume signals:
- **Buy Signal:** Triggered when price upward crossover VWAP, delta rises above the threshold, ADX indicates a strong bullish trend, and volume confirms bullish momentum.
- **Sell Signal:** Triggered under inverse conditions.
- Additionally, exit conditions (`exitLong` and `exitShort`) are based on VWAP crossovers combined with the reversal of delta values.
---
#### **Plotting and Display**
The strategy plots VWAP on the chart and adds signal markers for:
- **Buy/Long Entry:** Green triangle below bars.
- **Sell/Short Entry:** Red triangle above bars.
- **Exit Signals:** Lime or orange "X" shapes for exits from long/short positions.
- Additionally, optional text labels are displayed to indicate the type of signal.
---
#### **Trading Logic**
The script's trading logic executes as follows:
- **Entries:**
- Executes long trades when the `buySignal` condition is true.
- Executes short trades when the `sellSignal` condition is true.
- **Exits:**
- Closes long positions upon `exitLong` conditions.
- Closes short positions upon `exitShort` conditions.
- The strategy calculates profits and visualizes the trade entry, exit, and running profit within the chart.
---
#### **Alerts**
Alerts are set up to notify traders via custom signals for buy and sell trades.
---
### **Use Case**
This script is suitable for day traders, swing traders, or algorithmic traders who rely on confluence signals from VWAP, ADX, and volume momentum. Its modular structure (e.g., the ability to enable/disable specific indicators) makes it highly customizable for various trading styles and financial instruments.
#### **Customizability**
- Adjust VWAP, ADX, and volume sensitivity levels to fit unique market conditions or asset classes.
- Turn off specific criteria to focus only on VWAP or ADX signals if desired.
#### **Caution**
As with all trading strategies, this script should be used for backtesting and analysis before live implementation. It's essential to validate its performance on historical data while considering factors like slippage and transaction costs.
Futures
CL Live lotsize ROOSTERThis indicator helps futures traders manage risk with precision by dynamically calculating position size based on a fixed dollar risk.
🔻 Set a static stop-loss (e.g., 59.12)
📈 Define your desired Risk-Reward ratio (e.g., 1:3)
💵 Input your fixed account risk (e.g., $100)
The indicator then:
✅ Tracks the live market price to define entry
✅ Automatically calculates the correct contract size based on your stop-loss and risk
✅ Plots visual risk/reward zones (green for target, red for stop)
✅ Displays a live-updating lot size label on the chart
✅ Supports both long and short trade setups
Perfect for traders looking to stay consistent with risk management while adapting to market conditions in real time.
ChopFlow ATR Scalp StrategyA lean, high-velocity scalp framework for NQ and other futures that blends trend clarity, volume confirmation, and adaptive exits to give you precise, actionable signals—no cluttered bands or lagging indicators.
⸻
🔍 Overview
This strategy locks onto rapid intraday moves by:
• Filtering for directional momentum with the Choppiness Index (CI)
• Confirming conviction via On-Balance Volume (OBV) against its moving average
• Automatically sizing stops and targets with a multiple of the Average True Range (ATR)
It’s designed for scalp traders who need clean, timely entries without wading through choppy noise.
⸻
⚙️ Key Features & Inputs
1. ATR Length & Multiplier
• Controls exit distances based on current volatility.
2. Choppiness Length & Threshold
• Measures trend strength; only fires when the market isn’t “stuck in the mud.”
3. OBV SMA Length
• Smoothes volume flow to confirm genuine buying or selling pressure.
4. Custom Session Hours
• Avoid overnight gaps or low-liquidity periods.
All inputs are exposed for rapid tuning to your preferred scalp cadence.
🚀 How It Works
1. Long Entry triggers when:
• CI < threshold (strong trend)
• OBV > its SMA (positive volume flow)
• You’re within the defined session
2. Short Entry mirrors the above (CI < threshold, OBV < SMA)
3. Exit uses ATR × multiplier for both stop-loss and take-profit
⸻
🎯 Usage Tips
• Start with defaults (ATR 14, multiplier 1.5; CI 14, threshold 60; OBV SMA 10).
• Monitor signal frequency, then tighten/loosen CI or OBV look-back as needed.
• Pair with a fast MA crossover or price-action trigger if you want even sharper timing.
• Backtest across different sessions (early open vs. power hours) to find your edge.
⸻
⚠️ Disclaimer
This script is provided “as-is” for educational and research purposes. Always paper-trade any new setup extensively before deploying live capital, and adjust risk parameters to your personal tolerance.
⸻
Elevate your scalp game with ChopFlow ATR—where trend, volume, and volatility converge for clear, confident entries. Happy scalping!
First Presented Fair Value Gap [TakingProphets]🧠 Indicator Purpose:
The "First Presented Fair Value Gap" (FPFVG) by Taking Prophets is a precision tool designed for traders utilizing Inner Circle Trader (ICT) concepts. It automatically detects and highlights the first valid Fair Value Gap (FVG) that forms between 9:30 AM and 10:00 AM New York time — one of the most critical windows in ICT-based trading frameworks.
It also plots the Opening Range Equilibrium (the average of the previous day's 4:14 PM close and today's 9:30 AM open) — a key ICT reference point for premium/discount analysis.
🌟 What Makes This Indicator Unique:
This script is highly specialized for early session trading and offers:
Automatic Detection: Finds the first Fair Value Gap after the 9:30 AM NYSE open.
Clear Visualization: Highlights the FVG zone and labels it with optional time stamps.
Equilibrium Line: Plots the Opening Range Equilibrium for instant premium/discount context.
Time-Sensitive Logic: Limits detection to the most volatile early session (9:30 AM - 10:00 AM).
Extension Options: You can extend both the FVG box and Equilibrium line out to 3:45 PM (end of major session liquidity).
⚙️ How the Indicator Works (Detailed):
Pre-Market Setup:
Captures the previous day's 4:14 PM close.
Captures today's 9:30 AM open.
Calculates the Equilibrium (midpoint between the two).
After 9:30 AM (New York Time):
Monitors each 1-minute candle for the creation of a Fair Value Gap:
Bullish FVG: Low of the current candle is above the high two candles ago.
Bearish FVG: High of the current candle is below the low two candles ago.
The first valid gap is boxed and optionally labeled.
Post-Detection Management:
The FVG box and label extend forward in time until 3:45 PM (or the current time, based on settings).
If enabled, the Equilibrium line and label also extend to help with premium/discount analysis.
🎯 How to Use It:
Step 1: Wait for market open (9:30 AM New York time).
Step 2: Watch for the first presented FVG on the 1-minute chart.
Step 3: Use the FPFVG zone to guide entries (retracements, rejections, or breaks).
Step 4: Use the Opening Range Equilibrium to determine premium vs. discount conditions:
Price above Equilibrium = Premium market.
Price below Equilibrium = Discount market.
Best Application:
In combination with ICT Killzones, especially during the London or New York Open.
When framing intraday bias and identifying optimal trade locations based on liquidity theory.
🔎 Underlying Concepts:
Fair Value Gaps: Price imbalances where liquidity is likely inefficient and future rebalancing can occur.
Opening Range Equilibrium: Key ICT price anchor used to separate premium and discount conditions post-open.
Time-Gated Setup: Limits focus to early session price action, aligning with inner circle trader timing models.
🎨 Customization Options:
FVG color, label visibility, and label size.
Opening Range Equilibrium line visibility and label styling.
Extend lines and boxes to 3:45 PM automatically for full session tracking.
✅ Recommended for:
Traders applying Inner Circle Trader (ICT) models.
Intraday scalpers or day traders trading the New York session open.
Traders who want to frame early session bias and liquidity traps effectively.
NY First Candle Break and RetestStrategy Overview
Session and Time Parameters:
The strategy focuses on the New York trading session, starting at 9:30 AM and lasting for a predefined session length, typically 3 to 4 hours. This timing captures the most active market hours, providing ample trading opportunities.
Strategy Parameters:
Utilizes the Average True Range (ATR) to set dynamic stop-loss levels, ensuring risk is managed according to market volatility.
Employs a reward-to-risk ratio to determine take profit levels, aiming for a balanced approach between potential gains and losses.
Strategy Settings:
Incorporates simple moving averages (EMA) and the Volume Weighted Average Price (VWAP) to identify trend direction and price levels.
Volume confirmation is used to validate breakouts, ensuring trades are based on significant market activity.
Trade Management:
Features a trailing stop mechanism to lock in profits as the trade moves in favor, with multiple take profit levels to secure gains incrementally.
The strategy is designed to handle both long and short positions, adapting to market conditions.
Alert Settings:
Provides alerts for key events such as session start, breakout, retest, and entry signals, helping traders stay informed and act promptly.
Visual cues on the chart highlight entry and exit points, making it easier for beginners to follow the strategy.
This strategy is particularly suited for the current volatile market environment, where simplicity and clear guidelines can help beginner traders navigate the complexities of trading. It emphasizes risk management and uses straightforward indicators to make informed trading decisions.
I put together this Trading View scalping strategy for futures markets with some help from Claude AI. Shoutout to everyone who gave me advice along the way—I really appreciate it! I’m sure there’s room for improvement, so feel free to share your thoughts… just go easy on me. :)
ORB - Futures and Stocks (Breakouts + Alerts + ORB Selector)This indicator shows the Opening Range Breakout (ORB) based on the time range you choose.
Important:
It only works for intraday trading on time frames less than 1 day (like 1-minute, 5-minute, or hourly charts).
You can use it with any stock or futures, such as US500, NAS100, or GER40.
Inputs:
ORB Range - Your preference.
Session Start
Time Zone Offset
Examples:
for EU Frankfurt, DAX (GER40):
Set your ORB range
Session Start 0900
Time Zone Offset +1
For US Stock Market and US500, NAS100:
Set your ORB range
Session Start 0930
Time Zone Offset -5
Created using ChatGPT
CME Price LimitCalculates the CME Price Limit
The reference price is obtained from the previous day's closing settlement price
(data pulled from the asset's daily chart with settlement enabled)
Percentage limit can be modified in settings
Buffer can be enabled (for example, 2% buffer on a 7% limit, so a line gets drawn at 5% too)
Alert can be enabled for price crossing a certain percentage from reference on the day
You can choose to plot the historical lines on every day, or the current day only
The reference price output can be found in the data window, or in the indicator status line if enabled in the settings.
Before placing real trades with this, you should compare the indicator's reference price to what's shown on CME's website, to double check that TradingView's data matches for your contract.
www.cmegroup.com
Larry Williams POIV A/D [tradeviZion]Larry Williams' POIV A/D - Release Notes v1.0
=================================================
Release Date: 01 April 2025
OVERVIEW
--------
The Larry Williams POIV A/D (Price, Open Interest, Volume Accumulation/Distribution) indicator implements Williams' original formula while adding advanced divergence detection capabilities. This powerful tool combines price movement, open interest, and volume data to identify potential trend reversals and continuations.
FEATURES
--------
- Implements Larry Williams' original POIV A/D formula
- Divergence detection system:
* Regular divergences for trend reversal signals
* Hidden divergences for trend continuation signals
- Fast Mode option for earlier pivot detection
- Customizable sensitivity for divergence filtering
- Dynamic color visualization based on indicator direction
- Adjustable smoothing to reduce noise
- Automatic fallback to OBV when Open Interest is unavailable
FORMULA
-------
POIV A/D = CumulativeSum(Open Interest * (Close - Close ) / (True High - True Low)) + OBV
Where:
- Open Interest: Current period's open interest
- Close - Close : Price change from previous period
- True High - True Low: True Range
- OBV: On Balance Volume
DIVERGENCE TYPES
---------------
1. Regular Divergences (Reversal Signals):
- Bullish: Price makes lower lows while indicator makes higher lows
- Bearish: Price makes higher highs while indicator makes lower highs
2. Hidden Divergences (Continuation Signals):
- Bullish: Price makes higher lows while indicator makes lower lows
- Bearish: Price makes lower highs while indicator makes higher highs
REQUIREMENTS
-----------
- Works best with futures and other instruments that provide Open Interest data
- Automatically adapts to work with any instrument by using OBV when OI is unavailable
USAGE GUIDE
-----------
1. Apply the indicator to any chart
2. Configure settings:
- Adjust sensitivity for divergence detection
- Enable/disable Fast Mode for earlier signals
- Customize visual settings as needed
3. Look for divergence signals:
- Regular divergences for potential trend reversals
- Hidden divergences for trend continuation opportunities
4. Use the alerts system for automated divergence detection
KNOWN LIMITATIONS
----------------
- Requires Open Interest data for full functionality
- Fast Mode may generate more signals but with lower reliability
ACKNOWLEDGEMENTS
---------------
This indicator is based on Larry Williams' work on Open Interest analysis. The implementation includes additional features for divergence detection while maintaining the integrity of the original formula.
Sessions by MikinoAn indicator that draws lines from major price levels, made especially for NQ, ES and YM futures.
Features
• Show and hide any lines you want and don't need individually
• Customize how far the lines and labels are drawn (in bar length)
• Change label text, color, width and line type of any line drawn
Price levels (in NY time)
• "Show session open" - price at the beginning of the session at 6:00 PM
• "Show Asia open" - price at 8:00 PM
• "Show Asia high" - highest price during Asia session from 8 PM - midnight
• "Show Asia low" - lowest price during Asia session from 8 PM - midnight
• "Show London open" - price at 3:00/4:00 AM (depending on daylight savings time), at the start of London session
• "Show London high" - highest price during London session from 3:00/4:00 AM - 5:00/6:00 AM
• "Show Asia low" - lowest price during London session from 3:00/4:00 AM - 5:00/6:00 AM
• "Show midnight open" - price at midnight
• "Show New York open" - price at 9:30 AM
• "Show New York 10 am" - price at 10:00 AM (10 AM reversal)
• "Show previous day high" - highest price during yesterdays session (from 6:00 PM until 6:00 PM)
• "Show previous day low" - lowest price during yesterdays session (from 6:00 PM until 6:00 PM)
Limitations
All of the lines/labels will be drawn on the chart on up to hourly chart, with the exemption of PDH/PDL that can be drawn on up to 4 hour chart. PDH/PDL tracks each trading day from from 6:00 PM until 6:00 PM, Asia range from 8:00 PM until midnight, London from 3:00 AM until 05:00 AM. The indicator will work on different indices other than NQ, ES and YM, but some of the features might not work correctly due to what is considered a trading day.
HTF Anchored FanSimilar to an Anchored VWAP, this lets you click a bar on an Daily, Weekly, or Monthly chart to add an "Anchored Fan" which displays lines at up to 6 levels above and below the chosen Anchor Point. Useful to measure the retracement during swing moves.
You can reposition the fan by either hovering over the anchor or by clicking the name of the study to "activate" it, and then dragging. You can also change the Anchor Point in Settings.
By default the anchor uses the bar Close, but you can change this manually in settings OR you can use the fancy "Auto high/low" mode which is handy if you are mainly dropping the fan on local swing highs and lows.
The default line measures were chosen for ES (Futures) but the study should be usable with nearly anything as long as you adjust the settings to something appropriate for the ticker. If you want to use this on NQ, for example, it would be reasonable to multiple each of these settings by 3.5 or so.
NOTE: If the fan is way off the left side of the chart it's generally easiest to use Settings to move it back to close to "now".
GRID EXTENSIONGRID EXTENSION
Overview
The GRID EXTENSION is a simple grid-based indicator for TradingView, built with Pine Script v6. It plots horizontal price levels starting from a user-defined anchor price, with spacing set by a tick increment. Use it to identify key support, resistance, or price zones on charts for Crypto, Forex, or Futures.
Key Features
Custom Grid Levels: Plot up to 22 levels (e.g., 0, 0.25, 1.25, -2.50) with options to show/hide, set values, and choose colors.
Market-Specific Tick Increments: Select your asset type (Crypto, Forex, Futures) and choose from a range of tick increments tailored for each market:
Crypto: 1 to 5000 ticks (e.g., 100 ticks = $0.001 on ADA/USD, 5000 ticks = $50 on BTC/USD).
Forex: 5 to 5000 ticks (e.g., 100 ticks = 1 pip on EUR/USD, 5000 ticks = 50 pips).
Futures: 1 to 2500 ticks (e.g., 25 ticks = 6.25 points on E-mini S&P 500, $312.50 per contract).
Visual Options:
Extend lines to the right.
Show price and level labels (as values or percentages).
Place labels on the left or right.
Adjust background transparency for filled areas between levels.
How to Use
Set Asset Type: Choose "Crypto," "Forex," or "Futures" to match your chart.
Set Anchor Price: Enter a starting price for the grid.
Pick Tick Increment: Select a tick increment from the dropdown, following the guidance for your asset type (see Key Features).
Customize Levels: Turn levels on/off, set values, and pick colors.
Add to Chart: Apply the indicator to see the grid on your chart.
Tips
Use levels to mark support/resistance zones for entries or exits.
Extend lines to project future price zones.
Choose smaller increments (e.g., 5 ticks) for scalping, or larger ones (e.g., 1000 ticks) for swing trading.
Combine with indicators like moving averages for better signals.
Settings
Asset Type: Select "Crypto," "Forex," or "Futures" (default: "Crypto").
Anchor Price: Starting price for the grid (default: 0.0).
Tick Increment: Space between levels (options: 1, 5, 10, 25, 50, 100, 250, 500, 1000, 2500, 5000). Choose based on asset type.
Extend Right: Extend lines to the right (default: true).
Show Prices: Show price labels (default: true).
Show Levels: Show level values or percentages (default: true).
Format: Display levels as "Values" or "Percent" (default: "Values").
Labels Position: Place labels on "Left" or "Right" (default: "Left").
Background Transparency: Set transparency for filled areas (default: 100, range 0-100).
Level Options: Enable/disable levels, set values, and choose colors.
Notes
Set the anchor price to a key level (like a recent high or low) for best results.
Check the tick increment tooltip to ensure the spacing suits your market type.
Works on any chart, best for clear price trends or ranges.
Acknowledgments
Made with Pine Script v6 for TradingView. This is v1.0—feedback welcome for future updates!
Intraday Anchored FanSimilar to an Anchored VWAP, this lets you click a bar on an Intraday chart to add an "Anchored Fan" which displays lines at up to 6 levels above and below the chosen Anchor Point. Useful to measure the retracement during swing moves.
You can reposition the fan by either hovering over the anchor or by clicking the name of the study to "activate" it, and then dragging. You can also change the Anchor Point in Settings.
By default the anchor uses the bar Close, but you can change this manually in settings OR you can use the fancy "Auto high/low" mode which is handy if you are mainly dropping the fan on local swing highs and lows.
The default line measures were chosen for ES (Futures) but the study should be usable with nearly anything as long as you adjust the settings to something appropriate for the ticker. If you want to use this on NQ, for example, it would be reasonable to multiple each of these settings by 3.5 or so.
NOTE: If the fan is off the left side of the chart, one way to see the Anchor handle again easily is to switch to a higher timeframe; for example if you are on the 5min maybe use the 15min or hourly to find the handle -- if it is WAY off the left side (for example if you let many days pass without advancing it) it's generally easiest to use Settings to move it back to "now".
Casa_SessionsLibrary "Casa_Sessions"
Advanced trading session management library that enhances TradingView's default functionality:
Key Features:
- Accurate session detection for futures markets
- Custom session hour definitions
- Drop-in replacements for standard TradingView session functions
- Flexible session map customization
- Full control over trading windows and market hours
Perfect for traders who need precise session timing, especially when working
with futures markets or custom trading schedules.
SetSessionTimes(session_type_input, custom_session_times_input, syminfo_type, syminfo_root, syminfo_timezone)
Parameters:
session_type_input (simple string) : Input string for session selection:
- 'Custom': User-defined session times
- 'FX-Tokyo': Tokyo forex session
- 'FX-London': London forex session
- 'FX-New York': NY forex session
- 'Overnight Session (ON)': After-hours trading
- 'Day Session (RTH)': Regular trading hours
custom_session_times_input (simple string) : Session parameter for custom time windows
Only used when session_type_input is 'Custom'
syminfo_type (simple string)
syminfo_root (simple string)
syminfo_timezone (simple string)
Returns:
session_times: Trading hours for selected session
session_timezone: Market timezone (relevant for forex)
getSessionMap()
Get futures trading session hours map
Keys are formatted as 'symbol:session', examples:
- 'ES:market' - Regular trading hours (RTH)
- 'ES:overnight' - Extended trading hours (ETH)
- 'NQ:market' - NASDAQ futures RTH
- 'CL:overnight' - Crude Oil futures ETH
Returns: Map
Key: Symbol:session identifier
Value: Session hours in format "HH:MM-HH:MM"
getSessionString(session, symbol, sessionMap)
Returns a session string representing the session hours (and days) for the requested symbol (or the chart's symbol if the symbol value is not provided). If the session string is not found in the collection, it will return a blank string.
Parameters:
session (string) : A string representing the session hour being requested. One of: market (regular trading hours), overnight (extended/electronic trading hours), postmarket (after-hours), premarket
symbol (string) : The symbol to check. Optional. Defaults to chart symbol.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
inSession(session, sessionMap, barsBack)
Returns true if the current symbol is currently in the session parameters defined by sessionString.
Parameters:
session (string) : A string representing the session hour being requested. One of: market (regular trading hours), overnight (extended/electronic trading hours), postmarket (after-hours), premarket
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
barsBack (int) : Private. Only used by futures to check islastbar. Optional. The default is 0.
ismarket(sessionMap)
Returns true if the current bar is a part of the regular trading hours (i.e. market hours), false otherwise. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isfirstbar()
Returns true if the current bar is the first bar of the day's session, false otherwise. If extended session information is used, only returns true on the first bar of the pre-market bars. Works for futures (TradingView's methods do not).
Returns: bool
islastbar()
Returns true if the current bar is the last bar of the day's session, false otherwise. If extended session information is used, only returns true on the last bar of the post-market bars. Works for futures (TradingView's methods do not).
Returns: bool
ispremarket(sessionMap)
Returns true if the current bar is a part of the pre-market, false otherwise. On non-intraday charts always returns false. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
ispostmarket(sessionMap)
Returns true if the current bar is a part of the post-market, false otherwise. On non-intraday charts always returns false. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isfirstbar_regular(sessionMap)
Returns true on the first regular session bar of the day, false otherwise. The result is the same whether extended session information is used or not. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
islastbar_regular(sessionMap)
Returns true on the last regular session bar of the day, false otherwise. The result is the same whether extended session information is used or not. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isovernight(sessionMap)
Returns true if the current bar is a part of the pre-market or post-market, false otherwise. On non-intraday charts always returns false.
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
getSessionHighAndLow(session, sessionMap)
Returns a tuple containing the high and low print during the specified session.
Parameters:
session (string) : The session for which to get the high & low prints. Defaults to market.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: A tuple containing
getSessionHigh(session, sessionMap)
Convenience function to return the session high. Necessary if you want to call this function from within a request.security expression where you can't return a tuple.
Parameters:
session (string) : The session for which to get the high & low prints. Defaults to market.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: The high of the session
getSessionLow(session, sessionMap)
Convenience function to return the session low. Necessary if you want to call this function from within a request.security expression where you can't return a tuple.
Parameters:
session (string) : The session for which to get the high & low prints. Defaults to market.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: The low of the session
Futures Open/High/Low TablesAdds (up to) 3 tables to a chart, displaying Open/High/Low data for today (RTH and extended hours), yesterday, and the current week / month -- to help with intraday analysis of a futures ticker.
The tables only appear on intraday charts (5min, 30min, etc). On a Daily/Weekly/etc chart they are not calculated or shown.
In addition to Open/High/Low, the "Current" table in the top-right shows a live measurement of # of points from the open, the RTH open, and the highs/lows.
Lastly, the 9:30am ET open and the 4pm RTH close are by default marked with a shaded background (on intraday charts) for easy visual reference, and also to help with adjusting the session time to accommodate time zone issues if they occur.
Tested on ES in Eastern Time Zone, but should work on any futures instrument and any time zone by adjusting the Session Time setting.
Celestial Pair Spread Hello friends, after a very long time!
Today, I tried to put into code an idea that came to my mind spontaneously and suddenly.
Note :
This script is experimental and improvable.
I haven't had a chance to try it yet.
TIMEFRAME : 1D (Daily Bars)
CELESTIAL SPREAD
The spread moves in a very limited area and is consistent within itself, especially on days far from the end of the contract.
That's why there is a reassuring sky atmosphere. That's why this name was given completely improvised.
Basic logic of the script
We enter the name of the CME Futures contract we want to enter:
Ex : CL1! , ES1! , ZC1! , NQ1!
The script creates us a pair trade parity divided into secondary contracts.
Example : ES1!/ES2!
What is pair trading?
I will explain briefly here.
For users who are wondering:
www.investopedia.com
Let's get back to our topic.
Now we have created a parity that does not actually exist.
This parity is the manifestation of the relative movements of two contracts.
When the parity rises, ES1! increased,ES2! has fallen.
In the opposite case, We can say: ES1! Contract has been dropped ES2! has increased.
Pair trading is generally a trade that needs to be kept in mind from time to time.
It is a method preferred by professionals who can process very quickly.
Market risk is minimal, but since 2 contracts are purchased, more money is paid and very low percentage profits are made.
It is very expensive to do pair trading, especially with oil and its derivatives and interest security derivatives.
The contract we are considering has micros. (small-item contracts tied to the same value)
So when we switch to our broker MES1!/MES2! We will trade.
For all CME futures :
www.cmegroup.com
Anyway, let's continue:
The script created the parity showing its relationship with the next contract and plotted it as bars.
Celestial bands are just like Bollinger bands, but they consist of 3 bands based on percentage changes rather than standard deviation.
The middle band is obtained from moving averages.
The upper and lower bands are the middle band subjected to a threshold value.
The threshold value can be changed.
0.15 percent was charged for this script.
CAUTION :
As can be seen in the example below;
The most important thing is not to make any transactions when the contract switch dates are approaching.
Therefore, it is recommended to use it just below the main chart.
The blue bars in the parity are
Values that outside the upper and lower threshold values are colored blue.
For this condition
Alerts has been added.
Don't forget to add alert and edit.
MAIN PURPOSE
It is aimed to start a pair trade when such conditions come and to quickly close the trades when the parity basis reaches the value.
OTHER IMPORTANT POINTS
Other issues are broker related issues.
Difference between initial margins and maintanence margins of contracts (between 1! and 2!)
It shouldn't be too high.
The commission should not be too high.
Leverage must be high because the profit percentage is very low.
To calculate leverage you must divide your contract size by the relevant margin requirement.
Sample margin requirement table:
www.interactivebrokers.com
RISKS
It is an experimental and intellectual script,
the risk of contract price differences (maybe it will not leave a profit except for very extreme values)
I remind you of the quickness risk that comes from a two-legged trade.
Alerts definitely synchronized with an audible alert sent to a smartphone as an e-mail notification and displayed on the locked screen for quick action.
Best regards!
Forward Curve Visualization ToolProvide the spot symbol and the futures product root, and the script automatically scans all relevant contracts for you—no more tedious manual searches. The result is a clean, intuitive chart showing the live forward curve in real time.
It also detects contango or backwardation conditions (based on spot < F1 < F2 < F3).
Future Features:
Plot historical snapshots of the curve (1 day, 1 week, or 1 month ago) to understand market trends over time.
Display additional metrics such as annualized basis, cost of carry (CoC), and even volume or open interest for deeper insights.
If you trade futures and watch the forward curve, this script will give you the actionable data you need and get more ideas or features you’d like to see. Let’s build them together!
Disclaimer
Please remember that past performance may not be indicative of future results.
Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting.
This post and the script don’t provide any financial advice.
Highest Volume FuturesScript tracks the volume of futures contracts which are not expired for the current and next year. Provides a label at the real-time bar and when a different contract has higher volume in the last bar of the timeframe input as long as it is different from the current ticker. It should display on continuous and lower volume contract charts.
Intended to be used with a higher timeframe input.
Currently supports ES, MES, NQ, MNQ, RTY, M2K, YM, MYM, BTC, MBT, CL, MCL, GC, MGC, E7 and J7. If you'd like to add your own, then include the syminfo.root of your ticker and the appropriate month codes for that contract in the validMonthCodes switch list.
FXC NQ Opening Range Breakout Strategy V2.4Mechanical Strategy that trades breakouts on NQ futures on the 15min timeframe during the NYSE session. It's designed to manage Apex and Top Step accounts with the lowest risk possible.
Risk Disclaimer:
Past results as well as strategy tester reports do not indicate future performance. Guarantees do not exist in trading. By using this strategy you risk losing all your money.
Important:
It only trades on Monday, Wednesday and Friday and takes usually only 1 trade per trading day.
It works on the 15min timeframe only.
The settings are optimised already for NQ but feel free to change them.
How it works:
Every selected trading day it measures the range of the first 15min candle after the NYSE open. As soon as price closes above on the 15min timeframe, it will trade the breakout targeting a set risk to reward ratio. SL on the opposite side of the range. It will trail the SL after a set amount of points and uses a buffer of the set amount of points to trail it.
Settings:
Opening Range Time : This is the time of the day in hours and minutes when the strategy starts looking for trades. It's in the EST/ NY Timezone and set to 9:30-09:45 by default
because that's the NYSE open.
Session Time : This is the time of the day in hours and minutes until the strategy trades. It's in the EST/ NY Timezone and set to 09:45-14:45 by default.
because that's what gave the best results in backtesting. Open trades will get closed automatically once the end of the session is reached. No matter if win or loss. This is just to prevent holding positions over night.
Session Border This setting is to select the border color in which the session box will be plotted.
Opening Range Box This setting is to select the fill color of the opening range box.
Opening Range Border This setting is to select the border color of the session box.
Trade Timeframe This setting determines on which timeframe candle has to close outside the opening range box in order to take a trade. It's set to 15min by default because this is what worked by far the best in backtests and live trading.
Stop Loss Buffer in Points: This is simply the buffer in points that is added to the SL for safety reasons. If you have it on 0, the SL will be at the exact price of the opposite side of the range. By default it's set to 0 pips because this is what delivered the best results in backtests.
Profit Target Factor: This is simply the total SL size in points multiplied by x.
Example: If you put 2, you get a 1:2 Risk to Reward Ratio. By Default it's set to 4 because this gave the best results in backtests, because trades always get closed either by trailing SL or because the end of the session is reached.
Use Trailing Stop Loss: This setting is to enable/ disable the trailing stop loss. It's enabled by default because this is a fundamental part of the strategy.
Trailing Stop Buffer: This setting determines after how many points in profit the trailing SL will be activated.
Risk Type: You can chose either between Fixed USD Amount, Risk per Trade in % or Fixed Contract Size. By default it's set to fixed contract size.
Risk Amount (USD or Contracts): This setting is to set how many USD or how many contracts you want to risk per trade. Make sure to check which risk type you have selected before you chose the risk amount.
Use Limit Orders If enabled, the strategy will place a pending order x points from the current price, instead of a market order. Limit orders are enabled by default for a better performance. Important: It doesn't actually place a limit order. The strategy will just wait for a pullback and then enter with a market order. It's more like a hidden limit order.
Limit Order Distance (points): If you have limit orders enabled, this setting determines how many points from the current price the limit order will be placed.
Trading Days: These checkboxes are to select on which week days the strategy has to trade. Thursday is disabled by default because backtests have shown that Thursday is the least profitable day
Backtest Settings:
For the backtest the commissions ere set to 0.35 USD per mini contract which is the highest amount Tradeovate charges. Margin was not accounted for because typically on Apex accounts you can use way more contracts than you need for the extremely low max drawdown. Margin would be important on personal accounts but even there typically it's not an issue at all especially because this strategy runs on the 15min timeframe so it won't use a lot of contracts anyways.
What makes it unique:
This script is unique because it's designed to be used on Apex and Top Step accounts with extremely strict drawdown rules.
The strategy is optimised to be traded with a fixed contract size instead of using % risk. The reason for that is that the drawdown rules of these Futures Prop Accounts are very strict and the fact that the smallest trade-able contract size is 1.
Why the source code is hidden:
The source code is hidden because I invested a lot of time and money into developing this strategy and optimising it with paid 3rd party software. Also since I use it myself on my Apex accounts and prop firms don't allow copy trading I don't want it to be used by too many traders.
Futures Risk CalculatorFutures Risk Calculator Script - Description
The Futures Risk Calculator (FRC) is a comprehensive tool designed to help traders effectively manage risk when trading futures contracts. This script allows users to calculate risk/reward ratios directly on the chart by specifying their entry price and stop loss. It's an ideal tool for futures traders who want to quantify their potential losses and gains with precision, based on their trading account size and the number of contracts they trade.
What the Script Does:
1. Risk and Reward Calculation:
The script calculates your total risk in dollars and as a percentage of your account size based on the entry and stop-loss prices you input.
It also calculates two key levels where potential reward (Take Profit 1 and Take Profit 2) can be expected, helping you assess the reward-to-risk ratio for any trade.
2. Customizable Settings:
You can specify the size of your trading account (available $ for Futures trading) and the number of futures contracts you're trading. This allows for tailored risk management that reflects your exact trading conditions.
3. Live Chart Integration:
You add the script to your chart after opening a futures chart in TradingView. Simply click on the chart to set your Entry Price and Stop Loss. The script will instantly calculate and display the risk and reward levels based on the points you set.
Adjusting the entry and stop-loss points later is just as easy: drag and drop the levels directly on the chart, and the risk and reward calculations update automatically.
4. Futures Contract Support:
The script is pre-configured with a list of popular futures symbols (like ES, NQ, CL, GC, and more). If your preferred futures contract isn’t in the list, you can easily add it by modifying the script.
The script uses each symbol’s point value to ensure precise risk calculations, providing you with an accurate dollar risk and potential reward based on the specific contract you're trading.
How to Use the Script:
1. Apply the Script to a Futures Chart:
Open a futures contract chart in TradingView.
Add the Futures Risk Calculator (FRC) script as an indicator.
2. Set Entry and Stop Loss:
Upon applying the script, it will prompt you to select your entry price by clicking the chart where you plan to enter the market.
Next, click on the chart to set your stop-loss level.
The script will then calculate your total risk in dollars and as a percentage of your account size.
3. View Risk, Reward, and (Take Profit):
You can immediately see visual lines representing your entry, stop loss, and the calculated reward-to-risk ratio levels (Take Profit 1 and Take Profit 2).
If you want to adjust the entry or stop loss after plotting them, simply move the points on
the chart, and the script will recalculate everything for you.
4. Configure Account and Contracts:
In the script settings, you can enter your account size and adjust the number of contracts you are trading. These inputs allow the script to calculate risk in monetary terms and as a percentage, making it easier to manage your risk effectively.
5. Understand the Information in the Table:
Once you apply the script, a table will appear in the top-right corner of your chart, providing you with key information about your futures contract and the trade setup. Here's what each field represents:
Account Size: Displays your total account value, which you can set in the script's settings.
Future: Shows the selected futures symbol, along with key details such as its tick size and point value. This gives you a clear understanding of how much one point or tick is worth in dollar terms.
Entry Price: The exact price at which you plan to enter the trade, displayed in green.
Stop Loss Price: The price level where you plan to exit the trade if the market moves against you, shown in red.
Contracts: The number of futures contracts you are trading, which you can adjust in the settings.
Risk: Highlighted in orange, this field shows your total risk in dollars, as well as the percentage risk based on your account size. This is a crucial value to help you stay within your risk tolerance and manage your trades effectively.
QQQ and SPY Price Levels [MW]Introduction:
Don’t let SPY and QQQ resistance levels hurt your futures trading anymore. The QQQ and SPY Price Levels indicator automagically provides easily accessible QQQ price levels for NASDAQ-related charts such as QQQ, /NQ and /MNQ futures, and leveraged ETFs such as TQQQ and SQQQ as well as for SPY price levels for S&P 500-related charts such as SPY, /ES and /MES futures, SPX, and leveraged ETFs such as UPRO and SPXU. If you’ve ever traded futures, or anything QQQ- or SPY-related and wanted to know at what price would the corresponding asset reach a key whole number level of QQQ or SPY, like 400, 440, 445, or even 447.50, this tool is for you. Key 10x, 5x, and even 2.5x multiples of QQQ and SPY can act as support or resistance for other related-assets. Until now, there hasn’t been an indicator that can serve as an easy visual cue to know exactly when that is about to happen across assets.
This indicator is a fork of the original SPY Price Levels indicator, which only considered SPY-related assets.
Settings:
QQQ/SPY 2.5x: Show closest levels above and below that are multiples of 2.5 on QQQ
QQQ/SPY 5x: Show closest levels above and below that are multiples of 5 on QQQ
QQQ/SPY 10x: Show closest levels above and below that are multiples of 10 on QQQ
Show QQQ/SPY Price Label: Show the current QQQ/SPY price
Extend lines to the left: Extend label lines for each price level to the beginning of the chart
Calculations:
This indicator defines the ratio between the price of QQQ/SPY and another NASDAQ/S&P-related asset and uses that multiplier once the user-defined price increments are defined. For example, if /MNQ is at 19000 and QQQ is at 465, then the ratio would be 40.8.
The incremental QQQ levels that are above and below the QQQ price are calculated using the following equations:
qqqLevelUp = _multiplier * math.ceil(_qqqClose / _multiplier)
qqqLevelDown = _multiplier * math.floor(_qqqClose / _multiplier)
The conversion ratio is then multiplied by that amount to get the final estimated corresponding price using the calculation:
levelUp := _conversion * qqqLevelUp
levelDown := _conversion * qqqLevelDown
For leveraged assets, the conversion must be used on the difference between the current QQQ price and the incremental upper and lower levels.
For example, the calculation for the next level up looks like the following:
levelUpDelta := math.abs(_qqqClose - qqqLevelUp)
levelUp := close + _conversion * (levelUpDelta * _leverage)
This logic is identical for SPY-related assets.
How to Use:
The QQQ and SPY Price Levels indicator aims to be as unobtrusive as possible. The default view shows 3 labels and 2 lines that are all aligned to the right of the main chart, so that it interferes as little as possible with any other indicators. It can be added to any /NQ or /MNQ futures chart, SQQQ, TQQQ, and, of course, QQQ as well as any /ES /MES futures chart, SPXU, UPRO, SPX, and of course SPY. The most immediate price levels for each multiplier appears above and below the current price along with the price of QQQ/SPY.
For example, MNQU2024 is currently at 19594. By looking at the indicator the next QQQ increment below is at 475, or 19556 on the MNQU2024 chart. This potential support is marked with a green label that shows both prices. The next increment above is at QQQ 477.50, or 19659 on the MESU2024 chart. And the QQQ price itself, is also shown (and can be removed) at 475.92.
QQQ and SPY price increments of 2.5, 5, and 10 tend to consistently act at the very least as emotional support and resistance levels. Weak, or weakening volume and/or momentum when these levels are hit can trigger a strong rejection, and can sometimes precipitate lengthy consolidation periods at those levels. Watching an NASDAQ- and S&P 500-related asset come to a halt, fall off a cliff, or react in some other unintuitive way could very well be the result of a QQQ/SPY level being reached. Even though many of us know that this relationship exists, it’s easy to forget. So, this indicator helps to ensure that its users keep that relationship front and center.
By extending the lines into the past on QQQ/SPY and their related assets, you can see what reactions happened at these key levels.
Other Usage Notes and Limitations:
The calculations used only provide an estimated relationship or a close approximation, and are not exact.
It's important for traders to be aware of the limitations of any indicator and to use them as part of a broader, well-rounded trading strategy that includes risk management, fundamental analysis, and other tools that can help with reducing false signals, determining trend direction, and providing additional confirmation for a trade decision. Diversifying strategies and not relying solely on one type of indicator or analysis can help mitigate some of these risks.
Key Times & Opening Prices [Olitrades]This indicator plots key time's (opening prices) with the possibility of vertical separators. It was initially created to utilize on the indices futures market, utilizing ICT logic.
These opening prices are often utilized to determine if price is currently at a premium or a discounted value.
The default times include:
Daily Open (18:00 PM)
Midnight (00:00 AM)
Settlement (15:00 PM)
7:30 AM
8:30 AM
9:30 AM (Equities Open)
10:00 AM (Morning 4h Candle Open)
14:00 PM (Afternoon 4h Candle Open)
Along with up to three custom time slots.
All times used in the indicator are Eastern Standard time (New York local time) and will automatically adjust no matter your time zone.
Historical
When in historical mode, the indicator will keep the previous levels so you can easily visualize them and their relation to price.
You can also choose how many past levels you want to see. This allows you to back test only specific days/weeks.
Other Inputs
The indicator contains an adjustable offset, to modify how far the line extends depending on the current timeframe.
Each one of the above-mentioned levels can be turned on and off, including the custom times. You can also choose between plotting just the opening price, a vertical line separator, or both! All of these lines have adjustable styles (dotted, dashed or solid) and width.
They also have custom cut offs. You may choose specific cut off times for custom time slots (when to stop extending the lines), as well as for AM (before noon) default levels and PM (after noon) default levels.
The indicator also allows to show text labels next to these lines, which is set by default but can be turned off. Custom times also include custom text options.
SessionLibrary "Session"
Helper functions for trading sessions. TradingView doesn't provide correct data when
calling some of the convenience methods like session.ismarket when you are looking at futures charts. This library corrects those mistakes by providing functions with the same names as the TradingView default properties. that reference a custom defined set of session hours for futures. It also provides a way for consumers to customize the map values by calling getSessionMap() and then overwriting (or adding) custom session definitions.
getSessionMap()
Returns a map of the futures rth & eth session hours. The map is keyed with symbol:session format (eg. ES:market or ES:overnight).
Returns: A map of futures symbols and their associated session hours.
getSessionString(session, symbol, sessionMap)
Returns a session string representing the session hours (and days) for the requested symbol (or the chart's symbol if the symbol value is not provided). If the session string is not found in the collection, it will return a blank string.
Parameters:
session (string) : A string representing the session hour being requested. One of: market (regular trading hours), overnight (extended/electronic trading hours), postmarket (after-hours), premarket
symbol (string) : The symbol to check. Optional. Defaults to chart symbol.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
inSession(session, sessionMap, barsBack)
Returns true if the current symbol is currently in the session parameters defined by sessionString.
Parameters:
session (string) : A string representing the session hour being requested. One of: market (regular trading hours), overnight (extended/electronic trading hours), postmarket (after-hours), premarket
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
barsBack (int) : Private. Only used by futures to check islastbar. Optional. The default is 0.
ismarket(sessionMap)
Returns true if the current bar is a part of the regular trading hours (i.e. market hours), false otherwise. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isfirstbar()
Returns true if the current bar is the first bar of the day's session, false otherwise. If extended session information is used, only returns true on the first bar of the pre-market bars. Works for futures (TradingView's methods do not).
Returns: bool
islastbar()
Returns true if the current bar is the last bar of the day's session, false otherwise. If extended session information is used, only returns true on the last bar of the post-market bars. Works for futures (TradingView's methods do not).
Returns: bool
ispremarket(sessionMap)
Returns true if the current bar is a part of the pre-market, false otherwise. On non-intraday charts always returns false. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
ispostmarket(sessionMap)
Returns true if the current bar is a part of the post-market, false otherwise. On non-intraday charts always returns false. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isfirstbar_regular(sessionMap)
Returns true on the first regular session bar of the day, false otherwise. The result is the same whether extended session information is used or not. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
islastbar_regular(sessionMap)
Returns true on the last regular session bar of the day, false otherwise. The result is the same whether extended session information is used or not. Works for futures (TradingView's methods do not).
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
isovernight(sessionMap)
Returns true if the current bar is a part of the pre-market or post-market, false otherwise. On non-intraday charts always returns false.
Parameters:
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: bool
getSessionHighAndLow(session, sessionMap)
Returns a tuple containing the high and low print during the specified session.
Parameters:
session (string) : The session for which to get the high & low prints. Defaults to market.
sessionMap (map) : The map of futures session hours. Optional. Uses default if not provided.
Returns: A tuple containing
whookLibrary "whook"
This library provides functions for generating trading alerts for `whook`
check this -> github.com
Currently supported exchanges:
Kucoin futures
Bitget futures
Coinex futures
Bingx
OKX futures ( also its demo mode )
Bybit futures ( also Bybit testnet )
Binance futures ( also Binance futures testnet )
Phemex futures ( also Phemex testnet )
Kraken futures ( also Kraken futures testnet )
# --- Test Cases ---
Note: These test cases are for demonstration purposes only and may not cover all scenarios.
// buy(string account, float amount, string unit = "units", float leverage = 1)
buy("MyAccount", 100, "units", 1)
buy("MyAccount", 1000, "USDT", 5)
buy("MyAccount", 50, "percent", 2)
// sell(string account, float amount, string unit = "units", float leverage = 1)
sell("MyAccount", 50, "units", 1)
sell("MyAccount", 500, "USDT", 3)
sell("MyAccount", 25, "percent", 2)
// set_position(string account, float amount, string unit = "units", float leverage = 1)
set_position("MyAccount", 100, "units", 1)
set_position("MyAccount", 1000, "USDT", 5)
set_position("MyAccount", 50, "percent", 2)
// limit_buy(string account, float amount, float price, string unit = "units", float leverage = 1, string id = "")
limit_buy("MyAccount", 100, 10000, "units", 1, "MyBuyOrder")
limit_buy("MyAccount", 1000, 10500, "USDT", 5)
limit_buy("MyAccount", 50, 11000, "percent", 2)
// limit_sell(string account, float amount, float price, string unit = "units", float leverage = 1, string id = "")
limit_sell("MyAccount", 50, 10000, "units", 1, "MySellOrder")
limit_sell("MyAccount", 500, 9500, "USDT", 3)
limit_sell("MyAccount", 25, 9000, "percent", 2)
// close_percent(string account, float pct = 100)
close_percent("MyAccount", 100)
close_percent("MyAccount", 50)
buy(account, amount, unit, leverage)
Sends a trading alert to execute a market buy order.
Parameters:
account (string) : The account ID.
amount (float) : The amount to buy (can be in USD, units, or percentage).
unit (string) : The unit of the amount (optional, defaults to "units").
leverage (float) : The leverage to use (optional, defaults to 1x).
sell(account, amount, unit, leverage)
Sends a trading alert to execute a market sell order.
Parameters:
account (string) : The account ID.
amount (float) : The amount to sell (can be in USD, units, or percentage).
unit (string) : The unit of the amount (optional, defaults to "units").
leverage (float) : The leverage to use (optional, defaults to 1x).
set_position(account, amount, unit, leverage)
Sends a trading alert to set a position.
Parameters:
account (string) : The account ID.
amount (float) : The amount to set the position to (can be in USD, units, or percentage).
unit (string) : The unit of the amount (optional, defaults to "units").
leverage (float) : The leverage to use (optional, defaults to 1x).
limit_buy(account, amount, price, unit, leverage, id)
Sends a trading alert to place a limit buy order.
Parameters:
account (string) : The account ID.
amount (float) : The amount to buy (can be in USD, units, or percentage).
price (float) : The limit price.
unit (string) : The unit of the amount (optional, defaults to "units").
leverage (float) : The leverage to use (optional, defaults to 1x).
id (string) : An optional custom ID for the limit order.
limit_sell(account, amount, price, unit, leverage, id)
Sends a trading alert to place a limit sell order.
Parameters:
account (string) : The account ID.
amount (float) : The amount to sell (can be in USD, units, or percentage).
price (float) : The limit price.
unit (string) : The unit of the amount (optional, defaults to "units").
leverage (float) : The leverage to use (optional, defaults to 1x).
id (string) : An optional custom ID for the limit order.
close_percent(account, pct)
Sends an alert to close a position on Phemex.
Parameters:
account (string) : The account ID.
pct (float) : The percentage of the position to close (optional, defaults to 100%).