এই কৌশলটি একটি 300-অবধি এক্সপোনেনশিয়াল মুভিং এভারেজ (ইএমএ) উপর নির্মিত একটি অস্থিরতা ব্যান্ড ট্রেডিং সিস্টেম। ইএমএ এবং স্ট্যান্ডার্ড ডিভিয়েশনকে একত্রিত করে, এটি বাজারের অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয় সুযোগগুলি ক্যাপচার করার জন্য বোলিংজার ব্যান্ডের মতো গতিশীল অস্থিরতা পরিসীমা গঠন করে। কৌশলটি অস্থিরতা ব্যান্ডগুলির সাথে মূল্য ক্রসগুলির মাধ্যমে ট্রেডিং সংকেত তৈরি করে এবং শতাংশ লাভের ভিত্তিতে মুনাফা লক্ষ্য নির্ধারণ করে।
কৌশলটির মূলটি 300-পরিয়ড ইএমএ ব্যবহার করে একটি মূল্য কেন্দ্র স্থাপন করে এবং স্ট্যান্ডার্ড ডিভিয়েশন ব্যবহার করে অস্থিরতা ব্যান্ড তৈরি করে। এটি যখন দাম নীচের ব্যান্ডের নীচে (ওভারসোল্ড) এবং যখন দাম উপরের ব্যান্ডের উপরে (ওভারক্রয়েড) ভাঙবে তখন সংক্ষিপ্ত সংকেত তৈরি করে। বিশেষতঃ
কৌশলটি ইএমএ অস্থিরতা ব্যান্ডের মাধ্যমে বাজারের অতিরিক্ত ক্রয় এবং অতিরিক্ত বিক্রয়ের সুযোগগুলি ক্যাপচার করে, পরিষ্কার ট্রেডিং নিয়ম এবং সহজ অপারেশন সহ। তবে, ঝুঁকি নিয়ন্ত্রণের ব্যবহারিক প্রয়োগে মনোযোগ প্রয়োজন, এবং অতিরিক্ত সূচক এবং পরামিতি অপ্টিমাইজেশনের মাধ্যমে কৌশল স্থিতিশীলতা বাড়ানোর পরামর্শ দেওয়া হয়। সামগ্রিক নকশাটি যুক্তিসঙ্গত, ভাল ব্যবহারিক মূল্য এবং অপ্টিমাইজেশান সম্ভাবনার সাথে।
/*backtest start: 2024-10-01 00:00:00 end: 2024-10-31 23:59:59 period: 2h basePeriod: 2h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Estrategia de Compra/Venta en Bandas de EMA 300", overlay=true) // Definir el período de la EMA periodo = input.int(300, title="Período de la EMA") // Calcular la EMA de 300 ema_300 = ta.ema(close, periodo) // Definir el número de desviaciones estándar num_desviaciones = input.float(2, title="Número de Desviaciones Estándar") // Calcular la desviación estándar de la EMA de 300 desviacion = ta.stdev(close, periodo) // Calcular los límites superior e inferior de las bandas banda_superior = ema_300 + desviacion * num_desviaciones banda_inferior = ema_300 - desviacion * num_desviaciones // Definir el porcentaje para las señales de compra y venta porcentaje = input.float(0.98, title="Porcentaje de Salida de Banda") // Definir señales de compra y venta compra = ta.crossover(close, banda_inferior) venta = ta.crossunder(close, banda_superior) // Calcular el precio de salida para las señales de compra y venta precio_salida_compra = close * (1 + porcentaje / 100) precio_salida_venta = close * (1 - porcentaje / 100) // Plotear las bandas plot(banda_superior, color=color.blue, linewidth=2, title="Banda Superior") plot(banda_inferior, color=color.red, linewidth=2, title="Banda Inferior") // Plotear las señales de compra y venta plotshape(compra, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Compra") plotshape(venta, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Venta") // Simular operaciones if (compra) strategy.entry("Compra", strategy.long) if (venta) strategy.entry("Venta", strategy.short) // Definir reglas de salida if (strategy.position_size > 0) strategy.exit("Exit Long", from_entry="Compra", limit=precio_salida_compra) if (strategy.position_size < 0) strategy.exit("Exit Short", from_entry="Venta", limit=precio_salida_venta) // Crear alertas alertcondition(compra, title="Alerta de Compra", message="¡Señal de Compra Detectada!") alertcondition(venta, title="Alerta de Venta", message="¡Señal de Venta Detectada!") // Mostrar alertas en el gráfico if (compra) label.new(bar_index, low, text="Compra", style=label.style_label_up, color=color.green, textcolor=color.white) if (venta) label.new(bar_index, high, text="Venta", style=label.style_label_down, color=color.red, textcolor=color.white)