یہ حکمت عملی تین لگاتار bearish موم بتیوں اور دوہری حرکت پذیر اوسطوں پر مبنی تجارتی حکمت عملی ہے۔ حکمت عملی کا بنیادی خیال یہ ہے: جب تین لگاتار bearish موم بتیاں ہیں اور موجودہ اختتامی قیمت 200 دن کی حرکت پذیر اوسط سے زیادہ ہے تو ، ایک طویل پوزیشن کھولیں۔ جب 10 دن کی حرکت پذیر اوسط قیمت کے ساتھ عبور کرتی ہے ، یا قیمت منافع یا اسٹاپ نقصان کی سطح تک پہنچ جاتی ہے تو ، پوزیشن بند کریں۔ حکمت عملی صرف ایک مخصوص وقت کی حد میں چلتی ہے۔
یہ حکمت عملی مسلسل bearish موم بتیوں اور دوہری چلتی اوسط کے امتزاج کے ذریعے ایک سادہ اور سمجھنے میں آسان تجارتی ماڈل تیار کرتی ہے۔ رجحان کے مواقع پر قبضہ کرتے ہوئے ، حکمت عملی میں کچھ رسک کنٹرول اقدامات بھی طے ہوتے ہیں۔ تاہم ، سگنل فیصلے اور رسک کنٹرول میں اصلاح کے لئے مزید گنجائش موجود ہے۔ زیادہ تکنیکی اشارے متعارف کرانے ، پیرامیٹر کی ترتیبات کو بہتر بنانے ، متحرک منافع / اسٹاپ نقصان اور پوزیشن مینجمنٹ کو نافذ کرنے سے ، حکمت عملی کی استحکام اور منافع میں مزید بہتری آسکتی ہے۔
/*backtest start: 2023-05-08 00:00:00 end: 2024-05-13 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Estrategia de Trading", overlay=true) // Definir el número de cierres de velas decrecientes consecutivas var int cierres_decrecientes_consecutivos = 0 num_cierres_decrecientes = input.int(3, title="Número de cierres decrecientes", minval=1) // Definir el porcentaje de cambio para cerrar la operación porcentaje_cierre_arriba = input.float(1.5, title="Porcentaje de cierre arriba (%)", step=0.1) porcentaje_cierre_abajo = input.float(1.0, title="Porcentaje de cierre abajo (%)", step=0.1) // Definir las medias móviles para el cierre de la operación periodos_media_movil_cierre = input.int(10, title="Períodos de la media móvil para cierre") periodos_media_movil_200 = input.int(200, title="Períodos de la media móvil de 200") // Definir el rango de fechas para la simulación start_date = timestamp(2024, 1, 1, 0, 0) end_date = timestamp(2024, 12, 31, 23, 59) // Calcular la media móvil para el cierre de la operación sma_cierre = ta.sma(close, periodos_media_movil_cierre) sma_200 = ta.sma(close, periodos_media_movil_200) // Calcular si el precio está por encima o por debajo de la media móvil para el cierre de la operación precio_por_encima_sma_cierre = close > sma_cierre precio_por_debajo_sma_cierre = close < sma_cierre // Calcular si se han producido num_cierres_decrecientes consecutivos if (ta.change(close) < 0) cierres_decrecientes_consecutivos := cierres_decrecientes_consecutivos + 1 else cierres_decrecientes_consecutivos := 0 es_cierres_consecutivos = cierres_decrecientes_consecutivos >= num_cierres_decrecientes // Definir condiciones de entrada y salida de la estrategia dentro del rango de fechas y con el precio por encima de la SMA de 200 condicion_entrada = es_cierres_consecutivos and close > sma_200 condicion_cierre_sma = (precio_por_encima_sma_cierre[1] and not precio_por_encima_sma_cierre) or (not precio_por_encima_sma_cierre[1] and precio_por_encima_sma_cierre) // Calcular precios de salida basados en porcentajes precio_salida_arriba = strategy.position_avg_price * (1 + porcentaje_cierre_arriba / 100) precio_salida_abajo = strategy.position_avg_price * (1 - porcentaje_cierre_abajo / 100) // Ejecutar operación en largo dentro del rango de fechas y con el precio por encima de la SMA de 200 if (condicion_entrada and strategy.opentrades == 0) strategy.entry("Long", strategy.long) // Cerrar operación en largo si se cumple la condición de salida por cambio en el cruce de la media móvil dentro del rango de fechas if (strategy.position_size > 0 and condicion_cierre_sma) strategy.close("Long") // Cerrar operación en largo si el precio alcanza el porcentaje de cierre arriba o abajo dentro del rango de fechas strategy.exit("Stop Loss", "Long", limit=precio_salida_arriba, stop=precio_salida_abajo) // Plot para visualizar la media móvil para el cierre de la operación plot(sma_cierre, color=color.red) // Plot para visualizar la SMA de 200 plot(sma_200, color=color.blue)