রিসোর্স লোড হচ্ছে... লোডিং...

বিকল্প লেনদেনের ধারণা - কে-লাইন এলাকা লেনদেনের কৌশল

লেখক:উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্ন, তৈরিঃ ২০২৩-১১-০৩ 17:12:42, আপডেটঃ ২০২৩-১১-০৩ 17:35:03

img

এই নিবন্ধে আমরা এই ধারণাটি নিয়ে আলোচনা করব এবং এই স্ক্রিপ্টটি বাস্তবায়নের চেষ্টা করব।

কে-লাইন এলাকা কৌশল মূল ধারণা

কে-লাইন এরিয়া কৌশল হল একটি ট্রেডিং কৌশল যা দামের কে-লাইন এবং গড়ের মধ্যে এলাকার সম্পর্কের উপর ভিত্তি করে। এর মূল ধারণা হল মূল্যের প্রবণতার মাত্রা এবং পরিবর্তন এবং কেনার মানসিকতার রূপান্তর বিশ্লেষণ করে শেয়ার বাজারের মূল্যের সম্ভাব্য গতিবিধি পূর্বাভাস দেওয়া, যার ফলে পজিশন খোলার এবং বের হওয়ার সময় নির্ধারণ করা হয়। এই কৌশলটি কে-লাইন এবং গড়ের মধ্যে এলাকার উপর নির্ভর করে, এবং কেডিজে সূচকের সংখ্যাগত মানগুলি বহু-হেড এবং খালি-হেড ট্রেডিং সিগন্যাল তৈরি করে।

K-লাইন এলাকা কৌশল নীতি

কে-লাইন এলাকা হল মূল্যের কে-লাইন এবং সমান্তরালের মধ্যে স্থান এলাকা, যা প্রতি বারের সমাপ্তি মূল্যের গড় মূল্যকে বিয়োগ করে এবং তারপর যোগ করে গণনা করা হয়। যখন দামের উর্ধ্বমুখী প্রবণতা বড় হয়, দীর্ঘ সময়ের জন্য, কে-লাইন এলাকা বড় হয়, এবং যখন একটি অস্থির বাজার বা অস্থিরতার পরে বিপরীত হয়, তখন কে-লাইন এলাকা ছোট হয়। পশুদের বাধ্যতামূলক প্রতিক্রিয়া নীতি অনুসারে, উর্ধ্বমুখী প্রবণতা যত বড়, সময় যত বেশি, সংশ্লিষ্ট কে-লাইন এলাকা তত বড়, বিপরীত হওয়ার সম্ভাবনা তত বেশি, যেমন একটি উত্সাহ পিল, দীর্ঘতর টানুন, প্রতিরোধ ক্ষমতা তত বেশি। অতএব, একটি বড় কে-লাইন এলাকার থ্রেশহোল্ড সেট করুন, যখন এই পিলটি পৌঁছে যায়, দামটি প্রবণতা শেষ হতে পারে এবং বিপরীত হওয়ার সম্ভাবনা তত বেশি।

প্রবণতা বিপরীতমুখী হতে চলেছে তা আরও নিশ্চিত করার জন্য, কেডিজে সূচকটি চালু করা হয়, যা কেনার অনুভূতির রূপান্তর নির্ধারণ করতে ব্যবহৃত হয়। এই কৌশলটির থ্রেশহোল্ড এবং কেডিজে সূচকের মানের সেটিংগুলি নির্দিষ্ট পরিস্থিতি এবং প্রয়োজনের উপর নির্ভর করে কৌশলটির নির্ভুলতা বাড়ানোর জন্য সামঞ্জস্য করা যেতে পারে।

কে-লাইন এলাকা কৌশলগুলির সুবিধা

কে-লাইন এলাকা কৌশলটির সুবিধা হল যে এটি মূল্য প্রবণতার মাত্রা এবং পরিবর্তনগুলিকে একত্রিত করে, এবং কেনার এবং বিক্রির মনোভাবের রূপান্তর করে, যা একটি অপেক্ষাকৃত সম্পূর্ণ পরিমাণগত ট্রেডিং কৌশল সরবরাহ করে। এর সুবিধাগুলির মধ্যে রয়েছেঃ

  • ট্রেডারদের বাজারের গতিবিধি সম্পর্কে আরও ভালভাবে জানার জন্য ট্রেন্ড বিপরীত হওয়ার সম্ভাবনাগুলি সনাক্ত করার জন্য একটি সহজ এবং স্বজ্ঞাত উপায় সরবরাহ করে।
  • কে-লাইন এরিয়া এবং কেডিজে সূচকগুলির সংমিশ্রণ ব্যবহার করে কৌশলটির নির্ভরযোগ্যতা এবং নির্ভুলতা বৃদ্ধি করা হয়।
  • উচ্চ নমনীয়তা, যা বাজারের পরিস্থিতি অনুযায়ী বিভিন্ন লেনদেনের চাহিদা মেটাতে পরামিতিগুলি সামঞ্জস্য করতে পারে।

কে-লাইন এলাকা কৌশল ঝুঁকিপূর্ণ

যদিও কে-লাইন এরিয়া কৌশলটির কিছু সুবিধা রয়েছে, তবে এর সাথে কিছু ঝুঁকিও রয়েছে, যার মধ্যে রয়েছেঃ

  • মূলধন নির্ধারণের জন্য কিছু অভিজ্ঞতা এবং সংশোধন প্রয়োজন হতে পারে, যা যদি ভুলভাবে সেট করা হয় তবে এটি বাজারের গতিবিধি সম্পর্কে ভুল ধারণা তৈরি করতে পারে।
  • KDJ সূচকের নির্ভুলতা বাজারের অস্থিরতা এবং গোলমাল দ্বারা প্রভাবিত হয় এবং মিথ্যা সংকেত দেখা দিতে পারে।
  • কৌশলটির কার্যকারিতা বিভিন্ন বাজারের অবস্থার সাথে পরিবর্তিত হতে পারে এবং ক্রমাগত অপ্টিমাইজেশন এবং সমন্বয় প্রয়োজন।

কে-লাইন এলাকা কৌশল অপ্টিমাইজ করার দিক

K-Line Area Strategy অপ্টিমাইজ করার জন্য, নিম্নলিখিত দিকগুলি বিবেচনা করা যেতে পারেঃ

  • প্যারামিটার অপ্টিমাইজেশনঃ বিভিন্ন বাজারের পরিস্থিতি এবং লেনদেনের চাহিদার সাথে খাপ খাইয়ে নেওয়ার জন্য ক্রমাগত থ্রেশহোল্ড এবং কেডিজে সূচকের প্যারামিটারগুলি সামঞ্জস্য এবং অপ্টিমাইজ করা হয়।
  • ঝুঁকি ব্যবস্থাপনাঃ ক্ষতির ঝুঁকি কমাতে কার্যকর ঝুঁকি ব্যবস্থাপনা কৌশল বাস্তবায়ন করুন, যার মধ্যে রয়েছে হ্রাস ও হ্রাসের নিয়ম।
  • মাল্টি-কৌশল সংমিশ্রণঃ সমন্বিত ট্রেডিং কৌশলগুলির কার্যকারিতা উন্নত করতে কে-লাইন অঞ্চল কৌশলগুলিকে অন্যান্য কৌশলগুলির সাথে একত্রিত করুন।
  • রিয়েল-টাইম মনিটরিং এবং সমন্বয়ঃ নিয়মিত মনিটরিং কৌশলগুলির পারফরম্যান্স, বাস্তব পরিস্থিতির উপর ভিত্তি করে সামঞ্জস্য এবং উন্নতি করা হয়।

জাভাস্ক্রিপ্ট ভাষা ব্যবহার করে এই কৌশলটি বাস্তবায়ন করুন

  • K-রেখা আয়তন গণনা

  • মাল্টি-হাইড ট্রেডিং সিগন্যালঃ

    (১) হ্রাসের প্রবণতাযুক্ত তির্যক K-রেখা এলাকা তির্যকটি থ্রেশহোল্ডে পৌঁছেছে, যা পূর্বেই গঠিত হয়েছিল

    (2) KDJ এর মান 80 এর বেশি

  • শূন্যপদ শুরু করার সংকেতঃ

    (১) আপগ্রেডিং প্রবণতার সাথে K-রেখা এলাকা ক্যাপটি থ্রেশহোল্ডে পৌঁছেছে, যা আগে থেকেই গঠিত হয়েছিল

    (2) KDJ এর মান 20 এর চেয়ে কম

  • মাল্টি-হ্যান্ড/হ্যান্ড-হোলঃ এটিআর স্টপ লস স্টপ প্যাড

কোড বাস্তবায়ন

// 参数
var maPeriod = 30
var threshold = 50000
var amount = 0.1

// 全局变量
let c = KLineChart({})
let openPrice = 0
let tradeState = "NULL"  // NULL BUY SELL

function calculateKLineArea(r, ma) {
    var lastCrossUpIndex = null
    var lastCrossDownIndex = null
    for (var i = r.length - 1 ; i >= 0 ; i--) {
        if (ma[i] !== null && r[i].Open < ma[i] && r[i].Close > ma[i]) {
            lastCrossUpIndex = i
            break
        } else if (ma[i] !== null && r[i].Open > ma[i] && r[i].Close < ma[i]) {
            lastCrossDownIndex = i
            break
        }

        if (i >= 1 && ma[i] !== null && ma[i - 1] !== null && r[i - 1].Close < ma[i - 1] && r[i].Close > ma[i]) {
            lastCrossUpIndex = i
            break
        } else if (i >= 1 && ma[i] !== null && ma[i - 1] !== null && r[i - 1].Close > ma[i - 1] && r[i].Close < ma[i]) {
            lastCrossDownIndex = i
            break
        }
    }

    var area = 0
    if (lastCrossDownIndex !== null) {
        for (var i = r.length - 1 ; i >= lastCrossDownIndex ; i--) {
            area -= Math.abs(r[i].Close - ma[i])
        }
    } else if (lastCrossUpIndex !== null) {
        for (var i = r.length - 1 ; i >= lastCrossUpIndex ; i--) {
            area += Math.abs(r[i].Close - ma[i])
        }
    }

    return [area, lastCrossUpIndex, lastCrossDownIndex]
}

function onTick() {
    var r = _C(exchange.GetRecords)
    if (r.length < maPeriod) {
        LogStatus(_D(), "K线数量不足")
        return 
    }
    var ma = TA.MA(r, maPeriod)
    var atr = TA.ATR(r)
    var kdj = TA.KDJ(r)
    var lineK = kdj[0]
    var lineD = kdj[1]
    var lineJ = kdj[2]
    var areaInfo = calculateKLineArea(r, ma)
    var area = _N(areaInfo[0], 0)
    var lastCrossUpIndex = areaInfo[1]
    var lastCrossDownIndex = areaInfo[2]
    
    r.forEach(function(bar, index) {
        c.begin(bar)
        c.plotcandle(bar.Open, bar.High, bar.Low, bar.Close, {overlay: true})
        let maLine = c.plot(ma[index], "ma", {overlay: true})
        let close = c.plot(bar.Close, 'close', {overlay: true})
        c.fill(maLine, close, {color: bar.Close > ma[index] ? 'rgba(255, 0, 0, 0.1)' : 'rgba(0, 255, 0, 0.1)'})
        if (lastCrossUpIndex !== null) {
            c.plotchar(bar.Time, {char: '$:' + area, overlay: true})
        } else if (lastCrossDownIndex !== null) {
            c.plotchar(bar.Time, {char: '$:' + area, overlay: true})
        }
        c.plot(lineK[index], "K")
        c.plot(lineD[index], "D")
        c.plot(lineJ[index], "J")

        c.close()
    })
    
    if (tradeState == "NULL" && area < -threshold && lineK[lineK.length - 1] > 70) {
        // long
        let tradeInfo = $.Buy(amount)
        if (tradeInfo) {
            openPrice = tradeInfo.price
            tradeState = "BUY"
        }
    } else if (tradeState == "NULL" && area > threshold && lineK[lineK.length - 1] < 30) {
        // short
        let tradeInfo = $.Sell(amount)
        if (tradeInfo) {
            openPrice = tradeInfo.price
            tradeState = "SELL"
        }
    }
    
    let stopBase = tradeState == "BUY" ? Math.max(openPrice, r[r.length - 2].Close) : Math.min(openPrice, r[r.length - 2].Close)
    if (tradeState == "BUY" && r[r.length - 1].Close < stopBase - atr[atr.length - 2]) {
        // cover long
        let tradeInfo = $.Sell(amount)
        if (tradeInfo) {
            tradeState = "NULL"
            openPrice = 0
        }        
    } else if (tradeState == "SELL" && r[r.length - 1].Close > stopBase + atr[atr.length - 2]) {
        // cover short 
        let tradeInfo = $.Buy(amount)
        if (tradeInfo) {
            tradeState = "NULL"
            openPrice = 0
        }        
    }

    LogStatus(_D(), "area:", area, ", lineK[lineK.length - 2]:", lineK[lineK.length - 2])
}


function main() {    
    if (exchange.GetName().includes("_Futures")) {
        throw "not support Futures"
    }
    while (true) {
        onTick()
        Sleep(1000)
    }
}

তবে, আমি মনে করি, এটা খুবই গুরুত্বপূর্ণ যে, আমরা আমাদের দেশকে রক্ষা করি।

প্রথমত, কিছু গ্লোবাল ভেরিয়েবল এবং প্যারামিটার সংজ্ঞায়িত করা হয়েছে, যার মধ্যে রয়েছেঃ

কৌশলগত পরামিতি

  • maPeriod: চলমান গড়ের সময়কাল।
  • threshold: ক্রয় বা বিক্রয়ের সময় নির্ধারণের জন্য ব্যবহৃত threshold.
  • amount: প্রতি লেনদেনের পরিমাণ।

বিশ্বব্যাপী পরিবর্তনশীল

  • c: K লাইন চার্ট অবজেক্ট, যা চার্ট আঁকতে ব্যবহৃত হয়।
  • ওপেন প্রাইসঃ ওপেন প্রাইস রেকর্ড করুন।
  • tradeState: লেনদেনের অবস্থা রেকর্ড করুন, যা "NULL" (খালি স্টক) BUY (ক্রয়) বা "SELL" (বিক্রয়) হতে পারে।

গণনা ফাংশন

  • calculateKLineArea ফাংশনঃ এই ফাংশনটি K-লাইন চার্টে একটি নির্দিষ্ট সময়ের মধ্যে মূল্য এবং চলমান গড়ের মধ্যে এলাকা গণনা করে এবং এলাকার মান, শেষ ক্রস করা K-লাইন সূচক এবং শেষ ক্রস করা K-লাইন সূচক ফিরে আসে। এই মানগুলি পরবর্তী সিদ্ধান্তে কেনার এবং বিক্রি করার সময় নির্ধারণে ব্যবহৃত হয়।

প্রধান চক্র ফাংশন

  • onTick ফাংশনঃ এটি প্রধান নীতি সম্পাদন ফাংশন, যা ফাংশনের মধ্যে কাজ করেঃ

    a. সর্বশেষতম কে-লাইন ডেটা অর্জন করুন এবং নিশ্চিত করুন যে কে-লাইন সংখ্যা maPeriod এর চেয়ে কম নয়, অন্যথায় অবস্থা রেকর্ড করুন এবং ফিরে আসুন।

    b. চলমান গড়ের ma এবং ATR সূচক atr এবং KDJ সূচক গণনা করা হয়।

    c. areaInfo থেকে আয়তন তথ্য, সর্বশেষ ক্রসিং করা K স্ট্রিংয়ের সূচক এবং সর্বশেষ ক্রসিং করা K স্ট্রিংয়ের সূচক সংগ্রহ করা।

    d. K-লাইন চার্ট অবজেক্ট c ব্যবহার করে K-লাইন এবং সূচক লাইন আঁকুন এবং একই সাথে দামের সাথে চলমান গড়ের সম্পর্কের উপর নির্ভর করে বিভিন্ন রঙ পূরণ করুন।

    e. ক্রয় ও বিক্রয়ের সময় নির্ধারণের শর্তাদিঃ

    যদি tradeState হল NULL , এবং এর আয়তন -threshold এর চেয়ে কম হয় এবং KDJ এর K লাইন মান 70 এর চেয়ে বড় হয়, তাহলে ক্রয় অপারেশনটি সম্পাদন করুন। যদি tradeState হল NULL , এবং এলাকাটি threshold এর চেয়ে বড় এবং KDJ এর K লাইন মান 30 এর চেয়ে কম হয়, তাহলে বিক্রয় অপারেশনটি চালান। f. স্টপ লস এবং স্টপ প্যাড শর্তাবলী সেট করুন, যদি শর্ত পূরণ করা হয় তবে স্থিতিশীলতাঃ

    যদি এটি কেনা হয়, তবে যখন দামটি আগের ট্রেডিং দিনের বন্ধের দামের চেয়ে কম হয়, তবে আগের দিনের এটিআর বিয়োগ করা হয়, তখন স্থির হয়। যদি বিক্রয় হয়, তবে যখন দামটি আগের ট্রেডিং দিনের বন্ধের মূল্যের চেয়ে বেশি হয় এবং আগের দিনের এটিআর যোগ করা হয় তখন স্থির হয়। main ফাংশনঃ এটি প্রধান এক্সিকিউটিভ ইনপুট, এটি এক্সচেঞ্জের নামটিতে _Futures ট্যাগ রয়েছে কিনা তা পরীক্ষা করে, যদি থাকে তবে একটি ব্যতিক্রম ফেলে দেয়, অন্যথায় একটি অসীম লুপে যায়, প্রতিটি লুপে onTick ফাংশনটি সম্পাদন করে এবং 1 সেকেন্ডের জন্য ঘুমিয়ে পড়ে।

সামগ্রিকভাবে, এই কৌশলটি মূলত কে-লাইন চার্ট এবং প্রযুক্তিগত সূচকগুলির উপর নির্ভর করে, যখন ঝুঁকি পরিচালনার জন্য স্টপ লস এবং স্টপ পলস কৌশলগুলি ব্যবহার করা হয়। দয়া করে নোট করুন যে এটি কেবলমাত্র একটি উদাহরণ কৌশল এবং বাস্তবে ব্যবহারের জন্য বাজারের পরিস্থিতি এবং নির্দিষ্ট চাহিদার উপর ভিত্তি করে সামঞ্জস্য এবং অনুকূলিতকরণ প্রয়োজন।

在FMZ.COM上使用JavaScript语言没有用多少行代码,很简单的就实现了这个模型。并且使用KLineChart函数很容易实现了K线面积的图形表示。策略设计用于加密货币现货市场,使用了「数字货币现货交易类库」模板,使用模板封装的函数下单,也是非常简单易用、易懂。

কৌশলগত পুনর্বিবেচনা

img

img

আপনি যদি একটি রিভিউ সময়কাল বেছে নেন, যেখানে আপনি কোনও ক্ষতির সম্মুখীন হন নি, তবে কোনও লাভের সাথে অবিচ্ছিন্নভাবে সংযোজন করেন নি, তবে প্রত্যাহারের সমস্যাটি এখনও তুলনামূলকভাবে বড়। এই কৌশলটির জন্য অন্যান্য দিক এবং অনুকূলিতকরণের সুযোগ থাকা উচিত। আগ্রহীরা এই কৌশলটি আপগ্রেড করার চেষ্টা করতে পারে।

img

এই কৌশলটি ব্যবহার করে আমরা একটি তুলনামূলকভাবে বিকল্প ট্রেডিং ধারণার পাশাপাশি কীভাবে গ্রাফ আঁকতে হয় তাও শিখেছি; কে লাইন এবং সমতল রেখার চারপাশের এলাকা; কেডিজে সূচক আঁকতে ইত্যাদি।

সংক্ষিপ্তসার

কে-লাইন এলাকা কৌশল হল একটি ট্রেডিং কৌশল যা মূল্য প্রবণতা প্রস্থ এবং কেডিজে সূচকগুলির উপর ভিত্তি করে, যা কে-লাইন এবং গড়ের মধ্যে এলাকা বিশ্লেষণ করে এবং বিক্রয় মনোভাবের রূপান্তর করে ব্যবসায়ীদের বাজারের গতিবিধি পূর্বাভাস দিতে সহায়তা করে। যদিও কিছু ঝুঁকি রয়েছে, তবে ক্রমাগত অপ্টিমাইজেশন এবং সমন্বয় দ্বারা, কৌশলটি একটি শক্তিশালী ট্রেডিং সরঞ্জাম সরবরাহ করতে পারে যা ব্যবসায়ীদের বাজারের উদ্বেগকে আরও ভালভাবে মোকাবেলা করতে সহায়তা করে। গুরুত্বপূর্ণভাবে, ব্যবসায়ীরা নির্দিষ্ট পরিস্থিতি এবং বাজারের অবস্থার উপর নির্ভর করে কৌশলটির পরামিতি এবং নিয়মগুলি আরও ভাল ট্রেডিং পারফরম্যান্স অর্জনের জন্য নমনীয়ভাবে সামঞ্জস্য করতে পারে।


আরো