یہ ایک پیچیدہ مقداری تجارتی حکمت عملی ہے جو متعدد تکنیکی اشارے اور تجارتی تصورات کو جوڑتی ہے۔ یہ حکمت عملی بنیادی طور پر آرڈر بلاک ، رجحان کی تبدیلی کا پتہ لگانے ، حرکت پذیر اوسط کراس اوورز ، اور تجارتی سگنل پیدا کرنے کے لئے کثیر ٹائم فریم تجزیہ پر مبنی ہے۔ بنیادی خیال یہ ہے کہ چھوٹے ٹائم فریم (5 منٹ) پر قیمت کی کارروائی اور تکنیکی اشارے استعمال کریں تاکہ بڑے ٹائم فریم (1 گھنٹہ) پر رجحان کی سمت میں تجارت میں داخل اور باہر نکلیں۔
آرڈر بلاک: حکمت عملی آرڈر بلاک کا حساب لگانے کے لئے ایک کسٹم فنکشن کا استعمال کرتی ہے ، جو ایک اہم قیمت کی سطح ہے جو عام طور پر مرتکز ادارہ جاتی احکامات کے علاقوں کی نمائندگی کرتی ہے۔
رجحان کی تبدیلی کا پتہ لگانا: ممکنہ رجحان کی تبدیلیوں کا پتہ لگانے کے لئے سادہ چلتی اوسط (ایس ایم اے) کے کراس اوورز کا استعمال کرتا ہے۔
ملٹی ٹائم فریم تجزیہ: مارکیٹ کے وسیع تر رجحان کا تعین کرنے کے لئے 50 پیریڈ اور 200 پیریڈ ایکسپونینشل موونگ میڈیز (ای ایم اے) کا حساب لگاتا ہے۔
داخلے کی شرائط:
باہر نکلنے کی حکمت عملی: خطرے کو سنبھالنے اور منافع کو مقفل کرنے کے لئے مقررہ فیصد منافع اور سٹاپ نقصان کی سطح کا استعمال کرتا ہے۔
کثیر جہتی تجزیہ: متعدد ٹائم فریم اور تکنیکی اشارے کو جوڑتا ہے ، جس سے مارکیٹ کا زیادہ جامع نقطہ نظر ملتا ہے۔
رجحان کی پیروی: بڑے رجحان کی سمت میں تجارت کرکے ، یہ منافع بخش تجارت کا امکان بڑھاتا ہے۔
درست اندراجات: اندراج کے وقت کو بہتر بنانے کے لئے آرڈر بلاکس اور قلیل مدتی رجحان کی تبدیلیوں کا استعمال کرتا ہے۔
رسک مینجمنٹ: پہلے سے طے شدہ منافع اور اسٹاپ نقصان کے فیصد کا استعمال کرتا ہے ، ہر تجارت کے لئے خطرہ کو مؤثر طریقے سے کنٹرول کرتا ہے۔
موافقت: حکمت عملی کے پیرامیٹرز کو مختلف مارکیٹ کے ماحول میں اپنانے کے لئے ایڈجسٹ کیا جاسکتا ہے۔
اوور ٹریڈنگ: انتہائی اتار چڑھاؤ والے بازاروں میں تجارتی سگنل اکثر پیدا کرسکتے ہیں ، جس سے لین دین کی لاگت میں اضافہ ہوتا ہے۔
سکڑنے کا خطرہ: کم لیکویڈ مارکیٹوں میں ، اصل عمل درآمد کی قیمتیں مثالی قیمتوں سے نمایاں طور پر انحراف کرسکتی ہیں۔
رجحان کی تبدیلی کا خطرہ: حکمت عملی رجحان کے موڑ کے قریب مسلسل نقصانات کا شکار ہوسکتی ہے۔
پیرامیٹر حساسیت: حکمت عملی کی کارکردگی پیرامیٹر کی ترتیبات کے لئے انتہائی حساس ہوسکتی ہے ، جس میں مسلسل اصلاح کی ضرورت ہوتی ہے۔
مارکیٹ کے ماحول پر انحصار: یہ حکمت عملی مختلف یا تیزی سے اتار چڑھاؤ والے بازاروں میں اچھی کارکردگی کا مظاہرہ نہیں کرسکتی ہے۔
متحرک پیرامیٹر ایڈجسٹمنٹ: مارکیٹ کی اتار چڑھاؤ کی بنیاد پر منافع لینے اور سٹاپ نقصان کے فیصد کو خود بخود ایڈجسٹ کرنے پر غور کریں۔
اضافی فلٹرز: غلط سگنل کو کم کرنے کے لئے اضافی تکنیکی یا مارکیٹ کے جذبات کے اشارے متعارف کروائیں۔
ٹائم فلٹرنگ: کم لیکویڈیٹی کے ادوار سے بچنے کے لئے ٹریڈنگ ٹائم ونڈو کی پابندیوں کو شامل کریں.
پوزیشن مینجمنٹ: پوزیشن مینجمنٹ کی زیادہ نفیس حکمت عملیوں کو نافذ کریں ، جیسے اتار چڑھاؤ پر مبنی پوزیشن سائزنگ۔
بیک ٹیسٹنگ اور اصلاح: پیرامیٹر کے بہترین مجموعے تلاش کرنے کے لئے زیادہ وسیع تاریخی ڈیٹا بیک ٹیسٹنگ کریں۔
مارکیٹ ماحول کی پہچان: مارکیٹ کی مختلف حالتوں کی نشاندہی کرنے اور اس کے مطابق حکمت عملی کو ایڈجسٹ کرنے کے لئے الگورتھم تیار کریں۔
یہ ایک جامع اور منطقی طور پر پیچیدہ مقداری تجارتی حکمت عملی ہے جو ملٹی ٹائم فریم تجزیہ ، آرڈر بلاک تھیوری ، اور رجحان کی پیروی کرنے والی تکنیکوں کو جوڑتی ہے۔ بڑے رجحان کی سمت میں عین مطابق انٹری پوائنٹس کی تلاش کرکے ، حکمت عملی کا مقصد تجارت کی کامیابی کی شرح کو بہتر بنانا ہے۔ تاہم ، اس کی پیچیدگی کی وجہ سے ، حکمت عملی کو اوور فٹ اور پیرامیٹر حساسیت جیسے چیلنجوں کا بھی سامنا کرنا پڑتا ہے۔ مستقبل میں اصلاحات کو حکمت عملی کی موافقت اور استحکام کو بہتر بنانے پر توجہ دینی چاہئے ، بشمول متحرک پیرامیٹر ایڈجسٹمنٹ ، اضافی فلٹرز ، اور پوزیشن مینجمنٹ کے زیادہ نفیس طریقے۔ مجموعی طور پر ، یہ حکمت عملی اعلی تعدد کی تجارت کے لئے ایک بہترین فریم ورک فراہم کرتی ہے لیکن اس میں محتاط عمل درآمد اور مسلسل نگرانی اور ایڈجسٹمنٹ کی ضرورت ہوتی ہے۔
/*backtest start: 2024-06-28 00:00:00 end: 2024-07-28 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("S&P 500", overlay=true) // Parámetros length = input(14, "Longitud") src = input(close, "Fuente") profit_percent = input.float(0.08955, "Porcentaje de ganancia", step=0.00001, minval=0) stop_loss_percent = input.float(0.04477, "Porcentaje de stop loss", step=0.00001, minval=0) // Función para calcular el Order Block order_block(src, len) => highest = ta.highest(high, len) lowest = ta.lowest(low, len) mid = (highest + lowest) / 2 ob = src > mid ? highest : lowest ob // Cálculo del Order Block ob = order_block(src, length) // Función para detectar cambios de tendencia trend_change(src, len) => up = ta.crossover(src, ta.sma(src, len)) down = ta.crossunder(src, ta.sma(src, len)) [up, down] // Detectar cambios de tendencia [trend_up, trend_down] = trend_change(src, length) // Calcular EMA 50 y EMA 200 en timeframe de 1 hora ema50_1h = request.security(syminfo.tickerid, "60", ta.ema(close, 50)) ema200_1h = request.security(syminfo.tickerid, "60", ta.ema(close, 200)) // Condiciones de EMA ema_buy_condition = ema50_1h > ema200_1h ema_sell_condition = ema50_1h < ema200_1h // Señales de compra y venta buy_signal = trend_up and close > ob and ema_buy_condition sell_signal = trend_down and close < ob and ema_sell_condition // Ejecutar la estrategia if (buy_signal) strategy.entry("Compra", strategy.long) if (sell_signal) strategy.entry("Venta", strategy.short) // Calcular precios de toma de ganancias y stop loss if (strategy.position_size != 0) entry_price = strategy.position_avg_price is_long = strategy.position_size > 0 take_profit = entry_price * (1 + (is_long ? 1 : -1) * profit_percent / 100) stop_loss = entry_price * (1 + (is_long ? -1 : 1) * stop_loss_percent / 100) strategy.exit(is_long ? "Long TP/SL" : "Short TP/SL", limit=take_profit, stop=stop_loss) // Visualización plot(ob, "Order Block", color.purple, 2) plot(ta.sma(src, length), "SMA", color.blue) plot(ema50_1h, "EMA 50 1h", color.yellow) plot(ema200_1h, "EMA 200 1h", color.white) bgcolor(buy_signal ? color.new(color.green, 90) : sell_signal ? color.new(color.red, 90) : na)