Эта стратегия комплексно учитывает различные аспекты, такие как рыночная ликвидность, тенденции и технические показатели, и позволяет использовать стратегию короткой линии для торговли. Эта стратегия может следовать тенденциям, использовать рыночную ликвидность для открытия позиций, чтобы получить короткую прибыль.
Основные принципы: в этой стратегии в основном учитываются два измерения: рыночная ликвидность и тенденция.
Показатели рыночной ликвидности: в данной стратегии в основном используются показатели рыночной ликвидности в виде МФИ и изменения объема торгов. Когда МФИ растут, а объем торгов увеличивается, мы считаем, что рыночная ликвидность хороша и подходит для открытия позиций.
Определение тренда: эта стратегия объединяет несколько показателей, таких как ADX, EMA и т. Д., чтобы определить тренд. Когда ADX выше 30 и его EMA, это означает сильную тенденцию. В то же время, если быстрая EMA происходит в случае золотой скрещивания и т. Д., можно также проверить тренд.
Условия для открытия позиции: рынок имеет хорошую ликвидность, и в то же время появляется тенденция, если другие вспомогательные условия (например, SAR местоположение и т. д.) также соответствуют, то создается сигнал для открытия позиции.
Стоп-стоп-убытки: в этой стратегии на каждой сделке устанавливаются фиксированные стоп-стоп (10 пунктов) и стоп-убытки (7,5 пунктов).
Эта стратегия имеет следующие преимущества:
Используйте рыночную ликвидность для определения времени: оценивайте рыночную ликвидность на основе MFI и объема сделок, избегайте открытия позиций в период низкой ликвидности рынка.
Следить за трендом, чтобы получить прибыль: в сочетании с такими показателями, как EMA, определить направление тренда, чтобы получить прибыль от тренда.
Контроль риска: установлен фиксированный стоп-стоп, эффективно контролирующий максимальный убыток за одну сделку.
Высокая частота сделок: как стратегия короткой линии, частота сделок должна быть высокой, чтобы постепенно накапливать прибыль.
Оптимизация параметров имеет большое пространство: например, параметры MA, параметры Stop Loss Stop и т. Д. могут быть оптимизированы для улучшения эффективности стратегии.
Однако есть и другие риски:
Риск контроля скольжения диска: теоретический стоп-стоп не может полностью отражать ситуацию на реальном диске, скольжение диска может быть более крупным.
Риск неудачи при определении тенденции: стратегия зависит от большего количества показателей, но все же существует возможность неудачи.
Риск чрезмерной торговли: как стратегия короткой линии, если параметры установлены неправильно, это может привести к чрезмерной торговле.
Риск возникновения нестандартных рыночных ситуаций: в экстремальных ситуациях, таких как отсутствие ликвидности на рынке или изменение политики, эта стратегия может не работать должным образом.
В то же время, мы можем снизить риски следующими способами:
Умеренная разрывная зона с учетом фактора скольжения диска.
Оптимизация логики определения тенденций, введение большего количества показателей, снижение вероятности неудачи.
Добавить ограничения на частоту открытия позиций, чтобы избежать чрезмерной торговли.
Гибко корректировать параметры в зависимости от рыночных условий, чтобы реагировать на аномальные ситуации.
Стратегия направлена на оптимизацию:
Введение большего количества показателей оптимизирует трендовые суждения, делая суждения более точными. Например, введение показателей MACD и т. Д.
Оптимизируйте циклические параметры MA, чтобы найти оптимальную комбинацию параметров.
Улучшение стратегии остановки убытков, например, использование мобильных остановок, промежуточных остановок и т. д.
Добавить ограничения на количество сделок, чтобы избежать слишком высокой частоты сделок. Например, открывать позиции максимум 3 раза в день.
Поиск лучших показателей рыночной ликвидности для дальнейшего определения времени открытия позиции. Например, введение показателей, таких как чистый приток.
Добавлена функция оптимизации параметров, которая позволяет автоматически оптимизировать параметры для поиска оптимальных комбинаций.
В этой стратегии учитываются различные аспекты, такие как рыночная ликвидность и тенденции, чтобы уловить прибыль в коротких линиях. По сравнению с традиционными стратегиями тренда, наибольшим новшеством в этой стратегии является введение показателей рыночной ликвидности, чтобы избежать перерыва в открытии позиций при отсутствии рыночной ликвидности. В свою очередь, в этой стратегии также существует определенный риск контроля риска и тенденций. Мы можем постоянно совершенствовать стратегию, вводя больше показателей, оптимизируя параметры и управляя риском.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © trent777brown
//@version=5
strategy("scalping with market facilitation", overlay=true, margin_long=100, margin_short=100)
MFI0 = (high - low) / volume
MFI1 = (high[1] - low[1]) / volume[1]
MFIplus = MFI0 > MFI1
MFIminus = MFI0 < MFI1
//Current Trend-(Changed mean to trend)-revised
trendplus = hl2 > high[1]
trendzero = hl2 < high[1] and hl2 > low[1] //addition of script
trendminus = hl2 < low[1] //changed high to low
//Volume +/-
volplus = volume > volume[1]
volminus = volume < volume[1]
//Period Control by Buyers or Sellers is determined with reference to Price action of the period
//divided into 3 sectors, sector 1 is the Top third, Sector 2 is the middle third,
//and sector 3 is the Bottom third of the period. Control classifications are: Extremes(11, 33), Neutral(22),
//Climbers(31,21,32) Open lower than Close, and Drifters(13,23,12)Close lower than Open
//value0 = low
//value1 = ((high - low)/3)
//value2 = ((high - low)/3)*2
//value3 = high
//o1 = (open >= (((high - low)/3) * 2) + low)
//c1 = (close >= (((high - low)/3) * 2) + low)
//o2 = (open <= o1)
//c2 = (close <= c1)
//o3 = (open <= ((high - low)/3) + low)
//c3 = (close <= ((high - low)/3) + low)
//sector2 = if((high - low)/3) + low and sector2 <= (((high - low)/3)*2) + low
//sector3 = if((high - low)/3) + low and >= low
//Extremes-Full Control of Period by Buyers or Sellers
//pg79 notes an 85% chance that the current trend will change in the next 1 to 5 bars
b11 = open >= (high - low) / 3 * 2 + low and close >= (high - low) / 3 * 2 + low //Extreme Buyer Control:Chartruse
b33 = open <= (high - low) / 3 + low and close <= (high - low) / 3 + low //Extreme Seller Control:Crimson
//Neutral pg80
b22 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Bracketed Price Control
//Climber-Open lower than Close pg81
b31 = open <= (high - low) / 3 + low and close >= (high - low) / 3 * 2 + low //Strong Buyer Control:Dark Green
b21 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close >= (high - low) / 3 * 2 + low //Moderate Buyer Control:Green
b32 = open <= (high - low) / 3 + low and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Weak Buyer Control:Light Green
//Drifter-Close lower than Open pg81
b13 = open >= (high - low) / 3 * 2 + low and close <= (high - low) / 3 + low //Strong Seller Control:Dark Red
b23 = open >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 and close <= (high - low) / 3 + low //Moderate Seller Control:Red
b12 = open >= (high - low) / 3 * 2 + low and close >= (high - low) / 3 + low and open <= (high - low) / 3 * 2 //Weak Seller Control:Light Red/Pink
//
psar= ta.sar(.09, .2, .2)
ema8= ta.ema(hlc3, 8)
ema13h= ta.ema(high, 13)
ema13l= ta.ema(low, 13)
ema13= ta.ema(close, 13)
ema55= ta.ema(close, 100)
[dip, dim, adx]= ta.dmi(5, 5)
adxema=ta.ema(adx, 3)
[macdl, sigl, histl]= ta.macd(close, 8, 13, 5)
obv= ta.obv
obvema= ta.ema(obv, 8)
obvema55= ta.ema(obv, 55)
mfigreen= MFIplus and volplus
adx_x_over= ta.crossover(adx, adxema) and adx >= 25
barssincemfi= ta.barssince(mfigreen)
longtrig2= adx > 30 and adx > adxema and barssincemfi <= 4
shorttrig2= adx > 30 and adx > adxema and barssincemfi <= 4
long= macdl > sigl and obv > obvema55 and ema8 > ema55 and psar < low and trendplus//and ema13l > ema55//and open > hull200 and close > hull200
short= macdl < sigl and obv < obvema55 and ema8 < ema55 and psar > high and trendminus//and ema13h < ema55//open < hull200 and close < hull200
//plot(hull200, color=color.red, linewidth=3)
plot(ema13h, color=color.gray, linewidth=3)
plot(ema13l, color=color.gray, linewidth=3)
plot(ema13, color=color.blue, linewidth=3)
//
plot(ema55, color=color.white, linewidth=3)
plot(psar, color=color.white, style=plot.style_circles)
plotshape(mfigreen, color=color.yellow, style=shape.flag, location=location.belowbar, size= size.tiny)
longCondition = long
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long, 1, when= longtrig2)
strategy.exit("exit long", "My Long Entry Id", profit= 100, loss= 75)
shortCondition = short
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short, 1, when= shorttrig2)
strategy.exit("exit short", "My Short Entry Id", profit= 100, loss= 75)