وسائل لوڈ ہو رہے ہیں... لوڈنگ...

ٹریڈنگ حکمت عملی کے بعد گینگٹر طویل مدتی رجحان

مصنف:چاؤ ژانگ، تاریخ: 2024-05-17 15:40:13
ٹیگز:ایس ایم ایم اےایس ایم اے

img

جائزہ

حکمت عملی کے اصول

Alligator Long-Term Trend Following Trading Strategy Alligator اشارے کی تعمیر کے لئے مختلف ادوار کے ساتھ تین چلتے ہوئے اوسط استعمال کرتا ہے، یعنی:

  1. دانت لائن: 8 مدت SMMA، مستقبل میں 5 بار منتقل
  2. ہونٹوں کی لائن: 5 دورانیہ SMMA، مستقبل میں 3 بار منتقل

جب ایلیگیٹر اشارے کا منہ اوپر کی طرف کھلتا ہے ، یعنی جب جبڑے کی لکیر نیچے ہے ، دانتوں کی لکیر وسط میں ہے ، اور ہونٹوں کی لکیر اوپر ہے ، اور قیمت ایلیگیٹر اشارے سے اوپر ہے تو ، حکمت عملی ایک طویل پوزیشن کھولے گی۔ یہ صورتحال اس بات کی نشاندہی کرتی ہے کہ اوپر کی رجحان کی لہر کی تصدیق ہوگئی ہے ، اور ہم رجحان ختم ہونے تک پوزیشن کو برقرار رکھنا چاہتے ہیں۔

جب قیمت جبڑے کی لائن سے نیچے ہوتی ہے تو، حکمت عملی طویل پوزیشن کو بند کر دے گی۔ اس سے یہ یقینی بنتا ہے کہ ہم ریچھ کی مارکیٹ میں پوزیشنوں کو برقرار نہیں رکھیں گے۔

حکمت عملی کے فوائد

  1. درمیانی سے طویل مدتی تجارت کے لئے موزوں: یہ حکمت عملی التواء اشارے پر مبنی ہے ، جو مارکیٹ میں اہم رجحانات کو مؤثر طریقے سے پکڑ سکتا ہے ، جس سے یہ تجارت کے بعد درمیانی سے طویل مدتی رجحان کے لئے بہت موزوں ہے۔
  2. ایپلی کیشنز کی وسیع رینج: حکمت عملی کو مختلف مالیاتی منڈیوں ، جیسے فاریکس ، کریپٹو کرنسیوں وغیرہ پر لاگو کیا جاسکتا ہے ، جس میں مضبوط موافقت اور لچک ہے۔
  3. پیرامیٹر کی اصلاح کی ضرورت نہیں: حکمت عملی مکمل طور پر مارکیٹ کے رجحانات کی پیروی کرتی ہے اور پیرامیٹر کی اصلاح کی ضرورت نہیں ہے ، جس سے یہ آسان اور استعمال میں آسان ہے۔

حکمت عملی کے خطرات

  1. ممکنہ سکڑنے کا خطرہ: مارکیٹ میں شدید اتار چڑھاؤ یا ناکافی لیکویڈیٹی کی صورت میں ، تجارتی احکامات کو متوقع قیمت پر عملدرآمد نہیں کیا جاسکتا ہے ، جس سے سکڑنے کا خطرہ پیدا ہوتا ہے۔
  2. فکسڈ رسک مینجمنٹ کا فقدان: اسٹریٹیجی میں فکسڈ رسک مینجمنٹ کی ترتیبات نہیں ہیں، اور ہر تجارت کے پوزیشن سائز کو کسی کی رسک ترجیح کے مطابق ایڈجسٹ کرنے کی ضرورت ہے۔
  3. ممکنہ طور پر چھوڑے گئے قلیل مدتی مواقع: چونکہ یہ حکمت عملی درمیانے اور طویل مدتی رجحانات کو پکڑنے پر مرکوز ہے ، لہذا یہ کچھ قلیل مدتی تجارتی مواقع کو کھو سکتا ہے۔

حکمت عملی کی اصلاح کی ہدایات

  1. پیرامیٹر کی ترتیبات کو بہتر بنائیں: اگرچہ حکمت عملی میں پیرامیٹر کی اصلاح کی ضرورت نہیں ہے ، لیکن آپ پیرامیٹر کے بہترین امتزاج کو تلاش کرنے کے لئے مختلف وقت کی مدت اور تجارتی اہداف کو بیک ٹسٹ کرنے کی کوشش کرسکتے ہیں۔

خلاصہ


/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//_______ <licence>
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Skyrex

//_______ <version>
//@version=5

//_______ <declaration_statement>
strategy(title = "Alligator Long Term Trend Following Strategy [Skyrex.io]", 
         shorttitle = "Alligator Strategy [Skyrex.io]", 
         overlay = true, 
         format = format.inherit, 
         pyramiding = 1, 
         calc_on_order_fills = false, 
         calc_on_every_tick = true, 
         default_qty_type = strategy.percent_of_equity, 
         default_qty_value = 100, 
         initial_capital = 10000, 
         currency = currency.NONE,  
         commission_type = strategy.commission.percent, 
         commission_value = 0.1,
         slippage = 5)


//_______ <constant_declarations>
var color skyrexGreen = color.new(#2ECD99, 0)
var color skyrexGray = color.new(#F2F2F2, 0)
var color skyrexWhite = color.new(#FFFFFF, 0)

var color barcolor = na


//_______ <inputs>
// Trading bot settings
sourceUuid = input.string(title = "sourceUuid:", defval = "yourBotSourceUuid", group = "Trading Bot Settings")
secretToken = input.string(title = "secretToken:", defval = "yourBotSecretToken", group = "Trading Bot Settings")

// Trading Period Settings
lookBackPeriodStart = input(title = "Trade Start Date/Time", defval = timestamp('2023-01-01T00:00:00'), group = "Trading Period Settings")
lookBackPeriodStop = input(title = "Trade Stop Date/Time", defval = timestamp('2025-01-01T00:00:00'), group = "Trading Period Settings")

//_______ <function_declarations>
//@function       Used to calculate Simple moving average for Alligator
//@param src      Sourse for smma Calculations
//@param length   Number of bars to calculate smma
//@returns        The calculated smma value 
smma(src, length) =>
    smma =  0.0
    smma := na(smma[1]) ? ta.sma(src, length) : (smma[1] * (length - 1) + src) / length
    smma


//@function       Used to decide if current candle above the Alligator
//@param jaw      Jaw line of an Alligator
//@param teeth    Teeth line of an Alligator
//@param lips     Lips line of an Alligator
//@returns        Bool value  
is_LowAboveAlligator(jaw, teeth, lips) =>
    result = low > jaw and low > lips and low > teeth 
    result


//@function       Used to decide if current candle below the Alligator
//@param jaw      Jaw line of an Alligator
//@param teeth    Teeth line of an Alligator
//@param lips     Lips line of an Alligator
//@returns        Bool value  
is_HighBelowAlligator(jaw, teeth, lips) =>
    result = high < jaw and high < lips and high < teeth 
    result


//@function       Used to decide if Alligator's mouth is open
//@param jaw      Jaw line of an Alligator
//@param teeth    Teeth line of an Alligator
//@param lips     Lips line of an Alligator
//@returns        Bool value 
is_AlligatorHungry(jaw, teeth, lips) =>
    result = lips > jaw[5] and lips > teeth[2] and teeth > jaw[3]
    result


//_______ <calculations>
jaw = smma(hl2, 13)[8]
teeth = smma(hl2, 8)[5]
lips = smma(hl2, 5)[3]


jaw_o = smma(hl2, 13)
teeth_o = smma(hl2, 8)
lips_o = smma(hl2, 5)


//_______ <strategy_calls>
longCondition = is_LowAboveAlligator(jaw, teeth, lips) and is_AlligatorHungry(jaw_o, teeth_o, lips_o) 
if (longCondition)
    strategy.entry(id = "entry1", direction = strategy.long, alert_message = '{\n"base": "' + syminfo.basecurrency + '",\n"quote": "' + syminfo.currency + '",\n"position": "entry1",\n"price": "' + str.tostring(close) + '",\n"sourceUuid": "' + sourceUuid + '",\n"secretToken": "' + secretToken + '",\n"timestamp": "' + str.tostring(timenow) + '"\n}')

if close < jaw
    strategy.close(id = "entry1", alert_message = '{\n"base": "' + syminfo.basecurrency + '",\n"quote": "' + syminfo.currency + '",\n"position": "close",\n"price": "' + str.tostring(close) + '",\n"sourceUuid": "' + sourceUuid + '",\n"secretToken": "' + secretToken + '",\n"timestamp": "' + str.tostring(timenow) + '"\n}')



//_______ <visuals>
if strategy.opentrades > 0
    barcolor := skyrexGreen
else 
    barcolor := skyrexGray

barcolor(barcolor)
//_______ <alerts>

متعلقہ

مزید