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

FMZ পাইন স্ক্রিপ্ট ডক

লেখক:উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্ন, সৃষ্টিঃ ২০২২-০৪-২৮ ১৬ঃ০৫:০৫, আপডেটঃ ২০২৪-০১-১২ ১৭ঃ২৫ঃ২৭

সূচক মান যত বেশি দীর্ঘ তীর আঁকা হবে।

plotarrow(series, title, colorup, colordown, offset, minheight, maxheight, editable, show_last, display)

উদাহরণ

codiff = close - open
plotarrow(codiff, colorup=color.new(color.teal,40), colordown=color.new(color.orange, 40), overlay=true)

যুক্তি

  • series(series int/float) তীরের আকারে প্রদর্শিত ডেটা সিরিজ। প্রয়োজনীয় যুক্তি।
  • title(কনস্ট স্ট্রিং) প্লটের নাম।
  • colorup(সারি রঙ) উপরে তীরের রঙ. ঐচ্ছিক যুক্তি.
  • colordown(সারি রঙ) নীচের তীরের রঙ. ঐচ্ছিক যুক্তি.
  • offset(series int) বাম বা ডানদিকে তীরগুলি স্থানান্তর করে। ডিফল্ট হল 0.
  • minheight(ইনপুট int) পিক্সেলের মধ্যে সর্বনিম্ন সম্ভাব্য তীর উচ্চতা. ডিফল্ট 5 হয়.
  • maxheight(ইনপুট int) পিক্সেল সর্বোচ্চ সম্ভাব্য তীর উচ্চতা. ডিফল্ট 100 হয়.
  • editable(const bool) যদি true হয় তাহলে প্লোটারো স্টাইল ফরম্যাট ডায়ালগে সম্পাদনাযোগ্য হবে। ডিফল্ট সত্য।
  • show_last(input int) যদি সেট করা থাকে, তাহলে চার্টে প্লট করার জন্য তীরের সংখ্যা (শেষ বার থেকে অতীতে ফিরে) নির্ধারণ করে।
  • display(plot_display) যেখানে প্লট প্রদর্শিত হয় সেখানে কন্ট্রোল। সম্ভাব্য মানগুলি হল: display.none, display.all। ডিফল্ট হল display.all।
  • overlay(const bool) হল FMZ প্ল্যাটফর্মের এক্সটেনশন আর্গুমেন্ট, এটি বর্তমান ফাংশনটি মূল চিত্র (সত্যে সেট করা) বা উপ-চিত্র (মিথ্যাতে সেট করা) এ প্রদর্শিত হবে তা সেট করতে ব্যবহৃত হয়, ডিফল্ট মানটি মিথ্যা। যদি এই আর্গুমেন্টটি নির্দিষ্ট করা না হয় তবে এটিoverlayযুক্তিstrategyঅথবাindicatorযদিstrategyঅথবাindicatorসেট করে নাoverlayডিফল্ট আর্গুমেন্ট অনুযায়ী প্রক্রিয়া করা হবে।

আরও দেখুন plot plotshape plotchar barcolor bgcolor

অ্যারে

array.pop

ফাংশনটি একটি অ্যারে থেকে শেষ উপাদানটি সরিয়ে দেয় এবং এর মান প্রদান করে।

array.pop(id)

উদাহরণ

// array.pop example
a = array.new_float(5,high)
removedEl = array.pop(a)
plot(array.size(a))
plot(removedEl)

রিটার্নসরানো উপাদানটির মান।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.set array.push array.remove array.insert array.shift

array.shift

ফাংশনটি একটি অ্যারের প্রথম উপাদান সরিয়ে দেয় এবং এর মান প্রদান করে।

array.shift(id)

উদাহরণ

// array.shift example
a = array.new_float(5,high)
removedEl = array.shift(a)
plot(array.size(a))
plot(removedEl)

রিটার্নসরানো উপাদানটির মান।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.unshift array.set array.push array.remove array.includes

array.unshift

ফাংশনটি অ্যারের শুরুতে মান সন্নিবেশ করায়।

array.unshift(id, value)

উদাহরণ

// array.unshift example
a = array.new_float(5, 0)
array.unshift(a, open)
plot(array.get(a, 0))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারের শুরুতে যোগ করার মান।

আরও দেখুন array.shift array.set array.insert array.remove array.indexof

array.size

ফাংশনটি একটি অ্যারেতে উপাদানের সংখ্যা প্রদান করে।

array.size(id)

উদাহরণ

// array.size example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
// note that changes in slice also modify original array
slice = array.slice(a, 0, 5)
array.push(slice, open)
// size was changed in slice and in original array
plot(array.size(a))
plot(array.size(slice))

রিটার্নঅ্যারেতে উপাদান সংখ্যা।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.sum array.slice array.sort

array.slice

ফাংশনটি একটি বিদ্যমান অ্যারে থেকে একটি স্লাইস তৈরি করে। যদি স্লাইস থেকে একটি বস্তু পরিবর্তন হয়, তবে পরিবর্তনগুলি নতুন এবং মূল অ্যারে উভয় ক্ষেত্রেই প্রয়োগ করা হয়।

array.slice(id, index_from, index_to)

উদাহরণ

// array.slice example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
// take elements from 0 to 4
// *note that changes in slice also modify original array 
slice = array.slice(a, 0, 5)
plot(array.sum(a) / 10)
plot(array.sum(slice) / 5)

রিটার্নএকটি অ্যারে এর স্লাইসের একটি অগভীর কপি।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • index_from(series int) শূন্য ভিত্তিক সূচক যা থেকে নিষ্কাশন শুরু করতে হবে।
  • index_to(series int) শূন্য-ভিত্তিক সূচক যার আগে নিষ্কাশন শেষ করতে হবে। ফাংশনটি এই সূচক সহ উপাদানকে অন্তর্ভুক্ত না করেই নিষ্কাশন করে।

আরও দেখুন array.new_float array.get array.sort

array.abs

মূল অ্যারেতে প্রতিটি উপাদানের পরম মান ধারণকারী একটি অ্যারে প্রদান করে।

array.abs(id)

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search

ফাংশনটি মানের সূচক প্রদান করে, অথবা -1 যদি মানটি পাওয়া না যায়। অনুসন্ধান করার জন্য অ্যারেটি ক্রমবর্ধমান ক্রমে বাছাই করা উচিত।

array.binary_search(id, val)

উদাহরণ

// array.binary_search
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search(a, 0) // 1
plot(position)

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • val(series int/float) অ্যারেতে অনুসন্ধান করার মান।

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

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search_leftmost

ফাংশনটি যদি এটি পাওয়া যায় তবে মানের সূচকটি ফেরত দেয়। যখন মানটি পাওয়া যায় না, তখন ফাংশনটি মানটি অ্যারেতে থাকলে যেখানে অবস্থিত হবে তার বাম দিকে পরবর্তী ক্ষুদ্রতম উপাদানটির সূচকটি ফেরত দেয়। অনুসন্ধান করতে অ্যারেটি ক্রমবর্ধমান ক্রমে বাছাই করা উচিত।

array.binary_search_leftmost(id, val)

উদাহরণ

// array.binary_search_leftmost
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search_leftmost(a, 3) // 2
plot(position)

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • val(series int/float) অ্যারেতে অনুসন্ধান করার মান।

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

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.binary_search_rightmost

ফাংশনটি যদি এটি পাওয়া যায় তবে মানের সূচকটি ফেরত দেয়। যখন মানটি পাওয়া যায় না, তখন ফাংশনটি উপাদানটির সূচকটি ফেরত দেয় যেখানে মানটি যদি অ্যারেতে থাকে তবে এটি অবস্থিত হবে। অ্যারেটি ক্রমবর্ধমান ক্রমে বাছাই করা উচিত।

array.binary_search_rightmost(id, val)

উদাহরণ

// array.binary_search_rightmost
a = array.from(5, -2, 0, 9, 1)
array.sort(a) // [-2, 0, 1, 5, 9]
position = array.binary_search_rightmost(a, 3) // 3
plot(position)

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • val(series int/float) অ্যারেতে অনুসন্ধান করার মান।

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

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.sort

ফাংশনটি একটি অ্যারের উপাদানগুলিকে সাজায়।

array.sort(id, order)

উদাহরণ

// array.sort example
a = array.new_float(0,0)
for i = 0 to 5
    array.push(a, high[i])
array.sort(a, order.descending)
if barstate.islast
    runtime.log(str.tostring(a))

যুক্তি

  • id(int[]/float[]/string[]) একটি অ্যারে বস্তু।
  • order(sort_order) সাজানোর ক্রমঃ order.ascending (ডিফল্ট) বা order.descending।

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.sort_indices

সূচকগুলির একটি অ্যারে ফেরত দেয় যা, যখন মূল অ্যারেটি সূচক করতে ব্যবহৃত হয়, তখন তাদের সাজানো ক্রমে এর উপাদানগুলিতে অ্যাক্সেস করবে। এটি মূল অ্যারেটি সংশোধন করে না।

array.sort_indices(id, order)

উদাহরণ

// array.sort_indices
a = array.from(5, -2, 0, 9, 1)
sortedIndices = array.sort_indices(a) // [1, 2, 4, 0, 3]
indexOfSmallestValue = array.get(sortedIndices, 0) // 1
smallestValue = array.get(a, indexOfSmallestValue) // -2
plot(smallestValue)

যুক্তি

  • id(int[]/float[]/string[]) একটি অ্যারে বস্তু।
  • order(sort_order) সাজানোর ক্রমঃ order.ascending বা order.descending. ঐচ্ছিক. ডিফল্ট হল order.ascending.

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.clear

ফাংশনটি একটি অ্যারে থেকে সমস্ত উপাদান সরিয়ে দেয়।

array.clear(id)

উদাহরণ

// array.clear example
a = array.new_float(5,high)
array.clear(a)
array.push(a, close)
plot(array.get(a,0))
plot(array.size(a))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.insert array.push array.remove array.pop

array.concat

ফাংশনটি দুটি অ্যারে একত্রিত করতে ব্যবহৃত হয়। এটি দ্বিতীয় অ্যারে থেকে প্রথম অ্যারেতে সমস্ত উপাদানকে ধাক্কা দেয় এবং প্রথম অ্যারে ফেরত দেয়।

array.concat(id1, id2)

উদাহরণ

// array.concat example
a = array.new_float(0,0)
b = array.new_float(0,0)
for i = 0 to 4
    array.push(a, high[i])
    array.push(b, low[i])
c = array.concat(a,b)
plot(array.size(a))
plot(array.size(b))
plot(array.size(c))

রিটার্নপ্রথম অ্যারেতে দ্বিতীয় অ্যারে থেকে একত্রিত উপাদান রয়েছে।

যুক্তি

  • id1(কোনও অ্যারে টাইপ) প্রথম অ্যারে অবজেক্ট.
  • id2(কোনও অ্যারে টাইপ) দ্বিতীয় অ্যারে অবজেক্ট.

আরও দেখুন array.new_float array.insert array.slice

array.copy

ফাংশনটি একটি বিদ্যমান অ্যারের একটি অনুলিপি তৈরি করে।

array.copy(id)

উদাহরণ

// array.copy example
length = 5
a = array.new_float(length, close)
b = array.copy(a)
a := array.new_float(length, open)
plot(array.sum(a) / length)
plot(array.sum(b) / length)

রিটার্নএকটি অ্যারের একটি কপি।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.get array.slice array.sort

array.stdev

ফাংশনটি একটি অ্যারেs উপাদানের স্ট্যান্ডার্ড ডিভিয়েশন প্রদান করে।

array.stdev(id, biased)

উদাহরণ

// array.stdev example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.stdev(a))

রিটার্নঅ্যারের উপাদানগুলির মান বিচ্যুতি।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • biased(সারি bool) কোন অনুমান ব্যবহার করা উচিত তা নির্ধারণ করে। ঐচ্ছিক। ডিফল্টটি সত্য।

মন্তব্যসমূহযদিbiasedযদি সত্য হয়, ফাংশনটি পুরো জনসংখ্যার একটি পক্ষপাতহীন অনুমান ব্যবহার করে গণনা করবে, যদি মিথ্যা হয় - একটি নমুনার নিরপেক্ষ অনুমান।

আরও দেখুন array.new_float array.max array.min array.avg

array.standardize

ফাংশনটি মানসম্মত উপাদানের অ্যারে প্রদান করে।

array.standardize(id)

উদাহরণ

// array.standardize example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
b = array.standardize(a)
plot(array.min(b))
plot(array.max(b))

রিটার্নমানসম্মত উপাদানগুলির অ্যারে।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.max array.min array.mode array.avg array.variance array.stdev

array.variance

ফাংশনটি একটি অ্যারে এর উপাদানগুলির বৈচিত্র্য প্রদান করে।

array.variance(id, biased)

উদাহরণ

// array.variance example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.variance(a))

রিটার্নঅ্যারের উপাদানগুলির বৈচিত্র্য।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • biased(সারি bool) কোন অনুমান ব্যবহার করা উচিত তা নির্ধারণ করে। ঐচ্ছিক। ডিফল্টটি সত্য।

মন্তব্যসমূহযদিbiasedযদি সত্য হয়, ফাংশনটি পুরো জনসংখ্যার একটি পক্ষপাতহীন অনুমান ব্যবহার করে গণনা করবে, যদি মিথ্যা হয় - একটি নমুনার নিরপেক্ষ অনুমান।

আরও দেখুন array.new_float array.stdev array.min array.avg array.covariance

array.covariance

ফাংশনটি দুটি অ্যারের সহবিবর্তনীয়তা প্রদান করে।

array.covariance(id1, id2, biased)

উদাহরণ

// array.covariance example
a = array.new_float(0)
b = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
    array.push(b, open[i])
plot(array.covariance(a, b))

রিটার্নদুইটি অ্যারের সহবিবর্তনীয়তা।

যুক্তি

  • id1(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • id2(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • biased(সারি bool) কোন অনুমান ব্যবহার করা উচিত তা নির্ধারণ করে। ঐচ্ছিক। ডিফল্টটি সত্য।

মন্তব্যসমূহযদিbiasedযদি সত্য হয়, ফাংশনটি পুরো জনসংখ্যার একটি পক্ষপাতহীন অনুমান ব্যবহার করে গণনা করবে, যদি মিথ্যা হয় - একটি নমুনার নিরপেক্ষ অনুমান।

আরও দেখুন array.new_float array.max array.stdev array.avg array.variance

array.fill

ফাংশনটি অ্যারের উপাদানগুলিকে একটি একক মানে সেট করে। যদি কোনও সূচক নির্দিষ্ট করা না হয় তবে সমস্ত উপাদান সেট করা হয়। যদি কেবল একটি শুরু সূচক (ডিফল্ট ০) সরবরাহ করা হয় তবে সেই সূচক থেকে শুরু হওয়া উপাদানগুলি সেট করা হয়। যদি উভয় সূচক আর্গুমেন্ট ব্যবহার করা হয় তবে শুরু সূচক থেকে শেষ সূচক (ডিফল্ট না) সহ নয় এমন উপাদানগুলি সেট করা হয়।

array.fill(id, value, index_from, index_to)

উদাহরণ

// array.fill example
a = array.new_float(10)
array.fill(a, close)
plot(array.sum(a))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারেটি পূরণ করার মান।
  • index_fromস্টার্ট ইন্ডেক্স, ডিফল্ট হল ০।
  • index_to(সারি int) শেষ সূচক, ডিফল্ট হল na. সেট করার জন্য শেষ উপাদানের সূচকের চেয়ে এক বড় হতে হবে।

আরও দেখুন array.new_float array.set array.slice

array.includes

ফাংশনটি true প্রদান করে যদি মানটি অ্যারেতে পাওয়া যায়, অন্যথায় false প্রদান করে।

array.includes(id, value)

উদাহরণ

// array.includes example
a = array.new_float(5,high)
p = close
if array.includes(a, high)
    p := open
plot(p)

রিটার্নমানটি অ্যারেতে পাওয়া গেলে সত্য, অন্যথায় মিথ্যা।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারেতে অনুসন্ধান করার মান।

আরও দেখুন array.new_float array.indexof array.shift array.remove array.insert

array.insert

ফাংশনটি একটি অ্যারেতে নতুন উপাদান যোগ করে এর বিষয়বস্তু পরিবর্তন করে।

array.insert(id, index, value)

উদাহরণ

// array.insert example
a = array.new_float(5, close)
array.insert(a, 0, open)
plot(array.get(a, 5))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • index(series int) মান সন্নিবেশ করানোর সূচক।
  • value (series <type of the array's elements>) অ্যারেতে যোগ করার মান।

আরও দেখুন array.new_float array.set array.push array.remove array.pop array.unshift

array.join

ফাংশনটি একটি অ্যারের সমস্ত উপাদানকে একত্রিত করে একটি নতুন স্ট্রিং তৈরি করে এবং ফেরত দেয়, নির্দিষ্ট বিভাজক স্ট্রিং দ্বারা পৃথক করা হয়।

array.join(id, separator)

উদাহরণ

// array.join example
a = array.new_float(5, 5)
runtime.log(array.join(a, ","))

যুক্তি

  • id(int[]/float[]/string[]) একটি অ্যারে বস্তু।
  • separator(সারি স্ট্রিং) প্রতিটি অ্যারে উপাদান পৃথক করার জন্য ব্যবহৃত স্ট্রিং।

আরও দেখুন array.new_float array.set array.insert array.remove array.pop array.unshift

array.lastindexof

ফাংশনটি মানটির সর্বশেষ ঘটনার সূচক প্রদান করে, অথবা -1 যদি মানটি পাওয়া না যায়।

array.lastindexof(id, value)

উদাহরণ

// array.lastindexof example
a = array.new_float(5,high)
index = array.lastindexof(a, high)
plot(index)

রিটার্নএকটি উপাদানের সূচক।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারেতে অনুসন্ধান করার মান।

আরও দেখুন array.new_float array.set array.push array.remove array.insert

array.max

ফাংশনটি বৃহত্তম মান, অথবা একটি প্রদত্ত অ্যারেতে nth বৃহত্তম মান প্রদান করে।

array.max(id, nth)

উদাহরণ

// array.max
a = array.from(5, -2, 0, 9, 1)
secondHighest = array.max(a, 2) // 1
plot(secondHighest)

রিটার্নঅ্যারেতে বৃহত্তম বা nth বৃহত্তম মান।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • nth(series int) ফেরত দেওয়া nতম বৃহত্তম মান, যেখানে শূন্য বৃহত্তম। ঐচ্ছিক। ডিফল্ট শূন্য।

আরও দেখুন array.new_float array.min array.sum

array.min

ফাংশনটি একটি প্রদত্ত অ্যারেতে ক্ষুদ্রতম মান বা nth ক্ষুদ্রতম মান প্রদান করে।

array.min(id, nth)

উদাহরণ

// array.min
a = array.from(5, -2, 0, 9, 1)
secondLowest = array.min(a, 1) // 0
plot(secondLowest)

রিটার্নঅ্যারেতে ক্ষুদ্রতম বা nth ক্ষুদ্রতম মান।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • nth(series int) ফেরত দেওয়ার জন্য nth ক্ষুদ্রতম মান, যেখানে শূন্য হল ক্ষুদ্রতম। ঐচ্ছিক। ডিফল্ট শূন্য।

আরও দেখুন array.new_float array.max array.sum

array.median

ফাংশনটি একটি অ্যারের s উপাদানের মধ্যমা প্রদান করে।

array.median(id)

উদাহরণ

// array.median example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.median(a))

রিটার্নঅ্যারের উপাদানগুলির মধ্যম।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.avg array.variance array.min

array.mode

ফাংশনটি একটি অ্যারেs উপাদানের মোড প্রদান করে। যদি একই ফ্রিকোয়েন্সির একাধিক মান থাকে তবে এটি ক্ষুদ্রতম মান প্রদান করে।

array.mode(id)

উদাহরণ

// array.mode example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.mode(a))

রিটার্নঅ্যারের উপাদানগুলির মোড।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.avg array.variance array.min

array.percentile_linear_interpolation

রৈখিক অন্তর্ভুক্তি ব্যবহার করে অ্যারে মানগুলির (প্রসেন্টাইল) নির্দিষ্ট শতাংশের জন্য যে মানটি কম বা সমান তা প্রদান করে।

array.percentile_linear_interpolation(id, percentage) 

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • percentage(series int/float) যে মানগুলি ফেরত দেওয়া মানের সমান বা কম হতে হবে তার শতাংশ।

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

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.percentile_nearest_rank

নিকটতম র্যাঙ্ক পদ্ধতি ব্যবহার করে অ্যারে মানগুলির (প্রসেনটাইল) নির্দিষ্ট শতাংশের জন্য কম বা সমান মানটি প্রদান করে।

array.percentile_nearest_rank(id, percentage) 

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • percentage(series int/float) যে মানগুলি ফেরত দেওয়া মানের সমান বা কম হতে হবে তার শতাংশ।

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

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.percentrank

অ্যারেতে একটি মানের শতাংশের র্যাঙ্ক প্রদান করে।

array.percentrank(id, index) 

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।
  • index(series int) যার জন্য এর পার্সেন্টাইল র্যাঙ্ক গণনা করা হয়।

মন্তব্যসমূহপারসেন্টাইল র্যাঙ্ক হল অ্যারেতে কতগুলি উপাদান রেফারেন্স মানের চেয়ে কম বা সমান।

আরও দেখুন array.new_float array.insert array.slice array.reverse order.ascending order.descending

array.range

ফাংশনটি একটি প্রদত্ত অ্যারে থেকে ন্যূনতম এবং সর্বোচ্চ মানগুলির মধ্যে পার্থক্য প্রদান করে।

array.range(id) 

উদাহরণ

// array.range example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.range(a))

রিটার্নঅ্যারেতে ন্যূনতম এবং সর্বোচ্চ মানের মধ্যে পার্থক্য।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.min array.max array.sum

array.remove

ফাংশনটি নির্দিষ্ট সূচক সহ উপাদানটি অপসারণ করে একটি অ্যারের বিষয়বস্তু পরিবর্তন করে।

array.remove(id, index)

উদাহরণ

// array.remove example
a = array.new_float(5,high)
removedEl = array.remove(a, 0)
plot(array.size(a))
plot(removedEl)

রিটার্নসরানো উপাদানটির মান।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • index(series int) অপসারণ করার জন্য উপাদানটির সূচক।

আরও দেখুন array.new_float array.set array.push array.insert array.pop array.shift

array.reverse

ফাংশনটি একটি অ্যারেকে বিপরীত করে। প্রথম অ্যারে উপাদানটি শেষ হয়ে যায় এবং শেষ অ্যারে উপাদানটি প্রথম হয়ে যায়।

array.reverse(id)

উদাহরণ

// array.reverse example
a = array.new_float(0)
for i = 0 to 9
    array.push(a, close[i])
plot(array.get(a, 0))
array.reverse(a)
plot(array.get(a, 0))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.sort array.push array.set array.avg

array.from

ফাংশনটি একটি প্রকারের সাথে একটি পরিবর্তনশীল সংখ্যক আর্গুমেন্ট নেয়ঃ int, float, bool, string, label, line, color, box, table, linefill, এবং সংশ্লিষ্ট প্রকারের একটি অ্যারে প্রদান করে।

array.from(arg0, arg1, ...)

উদাহরণ

// array.from_example
arr = array.from("Hello", "World!") // arr (string[]) will contain 2 elements: {Hello}, {World!}.
plot(close)

রিটার্নঅ্যারে এলিমেন্টের মান।

যুক্তি

  • arg0, arg1, ...(সারি int/float/bool/color/string/line/linefill) অ্যারে আর্গুমেন্ট।

array.new

ফাংশন একটি নতুন অ্যারে অবজেক্ট তৈরি করে<type> elements.

array.new(size, initial_value)

উদাহরণ

// array.new<string> example
a = array.new<string>(1, "Hello, World!")
runtime.log(array.get(a, 0))

উদাহরণ

// array.new<color> example
a = array.new<color>()
array.push(a, color.red)
array.push(a, color.green)
plot(close, color = array.get(a, close > open ? 1 : 0))

উদাহরণ

// array.new<float> example
length = 5
var a = array.new<float>(length, close)
if array.size(a) == length
  array.remove(a, 0)
  array.push(a, close)
plot(array.sum(a) / length, "SMA")

উদাহরণ

// array.new<line> example
// draw last 15 lines
var a = array.new<line>()
array.push(a, line.new(bar_index - 1, close[1], bar_index, close))
if array.size(a) > 15
    ln = array.shift(a)
    line.delete(ln)

রিটার্নএকটি অ্যারে অবজেক্টের আইডি যা অন্যান্য অ্যারে.*( ফাংশনে ব্যবহার করা যেতে পারে।

যুক্তি

  • size(series int) একটি অ্যারের প্রাথমিক আকার. ঐচ্ছিক. ডিফল্ট হল 0.
  • initial_value(সিরিজ <টাইপ>) সমস্ত অ্যারে উপাদানের প্রাথমিক মান। ঐচ্ছিক। ডিফল্ট হল na

মন্তব্যসমূহএকটি অ্যারে সূচক শূন্য থেকে শুরু হয়। যদি আপনি একটি অ্যারে আরম্ভ করতে চান এবং একই সময়ে তার সমস্ত উপাদান নির্দিষ্ট করতে চান, তাহলে ফাংশন array.from ব্যবহার করুন।

আরও দেখুন array.from array.push array.get array.size array.remove array.shift array.sum

array.new_bool

ফাংশনটি bool প্রকারের উপাদানগুলির একটি নতুন অ্যারে অবজেক্ট তৈরি করে।

array.new_bool(size, initial_value)

উদাহরণ

// array.new_bool example
length = 5
a = array.new_bool(length, close > open)
plot(array.get(a, 0) ? close : open)

রিটার্নএকটি অ্যারে অবজেক্টের আইডি যা অন্যান্য অ্যারে.*( ফাংশনে ব্যবহার করা যেতে পারে।

যুক্তি

  • size(series int) একটি অ্যারের প্রাথমিক আকার. ঐচ্ছিক. ডিফল্ট হল 0.
  • initial_value(সারি bool) সমস্ত অ্যারে উপাদানের প্রাথমিক মান. ঐচ্ছিক. ডিফল্ট হল na.

মন্তব্যসমূহঅ্যারে সূচক শূন্য থেকে শুরু হয়।

আরও দেখুন array.new_float array.get array.slice array.sort

array.new_float

ফাংশনটি ফ্লোট টাইপ উপাদানগুলির একটি নতুন অ্যারে অবজেক্ট তৈরি করে।

array.new_float(size, initial_value)

উদাহরণ

// array.new_float example
length = 5
a = array.new_float(length, close)
plot(array.sum(a) / length)

রিটার্নএকটি অ্যারে অবজেক্টের আইডি যা অন্যান্য অ্যারে.*( ফাংশনে ব্যবহার করা যেতে পারে।

যুক্তি

  • size(series int) একটি অ্যারের প্রাথমিক আকার. ঐচ্ছিক. ডিফল্ট হল 0.
  • initial_value(series int/float) সমস্ত অ্যারে উপাদানের প্রাথমিক মান। ঐচ্ছিক। ডিফল্ট হল na

মন্তব্যসমূহএকটি অ্যারে সূচক শূন্য থেকে শুরু হয়।

আরও দেখুন array.new_bool array.get array.slice array.sort

array.new_int

ফাংশনটি int টাইপ উপাদানগুলির একটি নতুন অ্যারে অবজেক্ট তৈরি করে।

array.new_int(size, initial_value)

উদাহরণ

// array.new_int example
length = 5
a = array.new_int(length, int(close))
plot(array.sum(a) / length)

রিটার্নএকটি অ্যারে অবজেক্টের আইডি যা অন্যান্য অ্যারে.*( ফাংশনে ব্যবহার করা যেতে পারে।

যুক্তি

  • size(series int) একটি অ্যারের প্রাথমিক আকার. ঐচ্ছিক. ডিফল্ট হল 0.
  • initial_value(series int) সমস্ত অ্যারে উপাদানের প্রাথমিক মান. ঐচ্ছিক. ডিফল্ট হল na.

মন্তব্যসমূহএকটি অ্যারে সূচক শূন্য থেকে শুরু হয়।

আরও দেখুন array.new_float array.get array.slice array.sort

array.new_string

ফাংশনটি স্ট্রিং টাইপ উপাদানগুলির একটি নতুন অ্যারে অবজেক্ট তৈরি করে।

array.new_string(size, initial_value)

উদাহরণ

// array.new_string example
length = 5
a = array.new_string(length, "text")
runtime.log(array.get(a, 0))

রিটার্নএকটি অ্যারে অবজেক্টের আইডি যা অন্যান্য অ্যারে.*( ফাংশনে ব্যবহার করা যেতে পারে।

যুক্তি

  • size(series int) একটি অ্যারের প্রাথমিক আকার. ঐচ্ছিক. ডিফল্ট হল 0.
  • initial_value(সারি স্ট্রিং) সমস্ত অ্যারে উপাদানের প্রাথমিক মান. ঐচ্ছিক. ডিফল্ট হল na.

মন্তব্যসমূহএকটি অ্যারে সূচক শূন্য থেকে শুরু হয়।

আরও দেখুন array.new_float array.get array.slice

array.get

ফাংশনটি নির্দিষ্ট সূচকের এলিমেন্টের মান প্রদান করে।

array.get(id, index)

উদাহরণ

// array.get example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i] - open[i])
plot(array.get(a, 9))

রিটার্নঅ্যারে এলিমেন্টের মান।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • index(series int) যে উপাদানের মান ফেরত দেওয়া হবে তার সূচক।

আরও দেখুন array.new_float array.set array.slice array.sort

array.push

ফাংশনটি একটি অ্যারেতে একটি মান যোগ করে।

array.push(id, value)

উদাহরণ

// array.push example
a = array.new_float(5, 0)
array.push(a, open)
plot(array.get(a, 5))

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারের শেষে যোগ করা উপাদানটির মান।

আরও দেখুন array.new_float array.set array.insert array.remove array.pop array.unshift

array.set

ফাংশনটি নির্দিষ্ট সূচকে উপাদানটির মান নির্ধারণ করে।

array.set(id, index, value) 

উদাহরণ

// array.set example
a = array.new_float(10)
for i = 0 to 9
  array.set(a, i, close[i])
plot(array.sum(a) / 10)

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • index(series int) পরিবর্তিত উপাদানটির সূচক।
  • value (series <type of the array's elements>) নতুন মান নির্ধারণ করা হবে।

আরও দেখুন array.new_float array.get array.slice

array.sum

ফাংশনটি একটি অ্যারেs উপাদানের যোগফল প্রদান করে।

array.sum(id) 

উদাহরণ

// array.sum example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i])
plot(array.sum(a))

রিটার্নঅ্যারের উপাদানগুলির যোগফল।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.max array.min

array.avg

ফাংশনটি একটি অ্যারেs উপাদানের গড় প্রদান করে।

array.avg(id)

উদাহরণ

// array.avg example
a = array.new_float(0)
for i = 0 to 9
  array.push(a, close[i])
plot(array.avg(a))

রিটার্নঅ্যারের উপাদানগুলির গড়।

যুক্তি

  • id(int[]/float[]) একটি অ্যারে অবজেক্ট।

আরও দেখুন array.new_float array.max array.min array.stdev

array.indexof

ফাংশনটি মানটির প্রথম ঘটনার সূচক প্রদান করে, অথবা -1 যদি মানটি পাওয়া না যায়।

array.indexof(id, value)

উদাহরণ

// array.indexof example
a = array.new_float(5,high)
index = array.indexof(a, high)
plot(index)

রিটার্নএকটি উপাদানের সূচক।

যুক্তি

  • id(কোনও অ্যারে টাইপ) একটি অ্যারে অবজেক্ট।
  • value (series <type of the array's elements>) অ্যারেতে অনুসন্ধান করার মান।

আরও দেখুন array.lastindexof array.get array.lastindexof array.remove array.insert

কৌশল

এর সাথে সম্পর্কিত অন্তর্নির্মিত ফাংশনstrategy, স্টপ লস পয়েন্ট এবং লাভের পয়েন্টগুলি এক দামের লাফের গুণক হিসাবে সংজ্ঞায়িত করা হয়।profitএবংlossযুক্তিstrategy.exitফাংশন স্টপ লস এবং পয়েন্ট লাভ নিতে প্রতিনিধিত্ব করে, এবং যুক্তিprofit10 সেট করা হয়, যে মূল্য লাফ 10 দ্বারা গুণিত হয় হিসাবে নিতে মুনাফা স্প্রেড, এবং মূল্য লাফ অন্তর্নির্মিত পরিবর্তনশীলsyminfo.mintick.

কৌশল

ফাংশনটি বেশ কয়েকটি কৌশল বৈশিষ্ট্য নির্ধারণ করে। লক্ষ্য করুন যে শুধুমাত্রtitle, shorttitle, overlay, pyramiding, default_qty_type, default_qty_valueপাস করার জন্য আর্গুমেন্টগুলি সমর্থিত। অন্যান্য আর্গুমেন্টগুলি PINE ভাষা কৌশলটির ইন্টারফেস আর্গুমেন্টগুলির মাধ্যমে সেট করা যেতে পারে।

strategy(title, shorttitle, overlay, format, precision, scale, pyramiding, calc_on_order_fills, calc_on_every_tick, max_bars_back, backtest_fill_limits_assumption, default_qty_type, default_qty_value, initial_capital, currency, slippage, commission_type, commission_value, process_orders_on_close, close_entries_rule, margin_long, margin_short, explicit_plot_zorder, max_lines_count, max_labels_count, max_boxes_count, risk_free_rate) 

উদাহরণ

strategy("Strategy", overlay = true)

// Enter long by market if current open is greater than previous high.
strategy.entry("Long", strategy.long, 1, when = open > high[1])
// Generate a full exit bracket (profit 10 points, loss 5 points per contract) from the entry named "Long".
strategy.exit("Exit", "Long", profit = 10, loss = 5)

যুক্তি

  • title(const string) সূচক শিরোনাম যা সূচক/কৌশল উইজেটে দেখা যাবে।
  • shorttitle(const string) সূচক সংক্ষিপ্ত শিরোনাম যা চার্ট কিংবদন্তিতে দেখা যাবে। আর্গুমেন্টটি ঐচ্ছিক।
  • overlay(const bool) যদি সত্য হয় তবে সূচকটি প্রধান সিরিজের জন্য একটি ওভারলে হিসাবে যুক্ত করা হবে। যদি মিথ্যা হয় - এটি একটি পৃথক চার্ট প্যানেলে যুক্ত করা হবে। ডিফল্টটি মিথ্যা।
  • format(const string) মূল্য অক্ষের ফরম্যাটিং সূচক মানের ধরন। সম্ভাব্য মানগুলি হলঃ format.inherit, format.price, format.volume। ডিফল্ট হল format.inherit।
  • precision(const int) মূল্য অক্ষের সূচক মানগুলির জন্য ফ্লোটিং পয়েন্টের পরে সংখ্যার সংখ্যা। একটি অ-নেতিবাচক পূর্ণসংখ্যা হতে হবে এবং 16 এর চেয়ে বড় নয়। যদি বাদ দেওয়া হয়, পিতা সিরিজ থেকে বিন্যাস ব্যবহার করে। যদি বিন্যাসটি বিন্যাস.ইনহেরিট হয় এবং এই যুক্তিটি সেট করা হয়, তবে বিন্যাসটি বিন্যাস.মূল্য হয়ে যায়।
  • scale(scale_type) দামের স্কেল যা নির্দেশক সংযুক্ত করা উচিত। সম্ভাব্য মানগুলি হলঃ scale.right, scale.left, scale.none। মান scale.none শুধুমাত্র overlay=true সেটিংয়ের সাথে সংমিশ্রণে প্রয়োগ করা যেতে পারে।
  • pyramiding(const int) একই দিকের সর্বাধিক সংখ্যক এন্ট্রি অনুমোদিত। যদি মানটি 0 হয় তবে একই দিকের কেবলমাত্র একটি এন্ট্রি অর্ডার খোলা যেতে পারে এবং অতিরিক্ত এন্ট্রি অর্ডারগুলি প্রত্যাখ্যান করা হয়। ডিফল্ট মানটি 0।
  • calc_on_order_fills(const bool) অতিরিক্ত এক সময় ইনট্রাবার অর্ডার গণনা। যদি যুক্তিটি true এ সেট করা হয়, তবে একটি অর্ডার পূরণ হওয়ার পরে (শুধুমাত্র বার বন্ধ না করে) একবার ইনট্রাবার পুনরায় কৌশল গণনা করা হয়। ডিফল্ট মানটি false
  • calc_on_every_tick(const bool) অতিরিক্ত ইনট্রাবার কৌশল গণনা। যদি যুক্তিটি true হয়, তবে কৌশলটি বারগুলি বন্ধ করার পরিবর্তে রিয়েল-টাইমে প্রতিটি টিকের উপর গণনা করবে। যুক্তিটি ঐতিহাসিক ডেটাতে কৌশল গণনাকে প্রভাবিত করে না। ডিফল্ট মানটি false
  • max_bars_back(const int) ঐতিহাসিক রেফারেন্সের জন্য একটি কৌশল জন্য উপলব্ধ বার সর্বোচ্চ সংখ্যা। এই যুক্তি স্ক্রিপ্টের প্রতিটি অন্তর্নির্মিত বা ব্যবহারকারী পরিবর্তনশীল প্রয়োগ করা হয় যদি স্ক্রিপ্ট কোড একটি পরিবর্তনশীল ঐতিহাসিক তথ্য একটি রেফারেন্স আছে ([] অপারেটর ব্যবহার করা হয়). পাইন স্ক্রিপ্টের পরিবর্তনশীল বাফারের আকার সাধারণত স্বয়ংক্রিয়ভাবে সনাক্ত করা হয়। যাইহোক, এটি নির্দিষ্ট ক্ষেত্রে সম্ভব নয়, যা কেন যুক্তি একটি ব্যবহারকারীকে এই মানের নীচের সীমানা নিজে সেট করতে পারবেন। দ্রষ্টব্যঃ যুক্তির পরিবর্তে max_bars_back ফাংশন ব্যবহার করা হয় কারণ এটি শুধুমাত্র একটি পরিবর্তনশীল প্রযোজ্য।
  • backtest_fill_limits_assumption(const int) লিমিট অর্ডার কার্যকর করার অনুমান। সীমানা অর্ডারগুলি কেবলমাত্র যদি বাজার মূল্য নির্দিষ্ট সংখ্যক টিক দ্বারা সীমা অর্ডার স্তর অতিক্রম করে তবে ইনট্রাবার পূরণ করা হয়।
  • default_qty_type(const string) নির্ধারণ করে কি মান ব্যবহার করা হয়qtyযুক্তি strategy.entry বা strategy.order ফাংশনে প্রতিনিধিত্ব করে। সম্ভাব্য মানগুলি হলঃ strategy.fixed for contracts/shares/lots,strategy.cashমুদ্রায় প্রদত্ত পরিমাণের জন্য, অথবা strategy.percent_of_equity উপলব্ধ মূলধনের শতাংশের জন্য।
  • default_qty_value(const int/float) default_qty_type আর্গুমেন্টের সাথে ব্যবহৃত আর্গুমেন্ট দ্বারা নির্ধারিত ইউনিটগুলিতে তাদের qty আর্গুমেন্ট সংজ্ঞায়িত না হলে strategy.entry বা strategy.order ফাংশনে ট্রেড করার জন্য ডিফল্ট পরিমাণ।
  • currency(const string) এই কৌশলটির জন্য অ্যাকাউন্টের মুদ্রা। ঐচ্ছিক। ডিফল্ট হল মুদ্রা যা চার্টে চিহ্নটি ট্রেড করা হয়। সম্ভাব্য মানঃ currency.NONE, currency.USD, currency.EUR, currency.AUD, currency.GBP, currency.NZD, currency.CAD, currency.CHF, currency.HKD, currency.JPY, currency.NOK, currency.SEK, currency.SGD, currency.TRY, currency.ZAR, currency.BTC, currency.ETH, currency.MYR, currency.KRW।
  • slippage(const int) টিকের মধ্যে স্লিপ যা কিনুন/বিক্রয় বাজার বা স্টপ অর্ডারের ভরাট মূল্য থেকে যোগ / বিয়োগ করা হবে। যদি মিন্টিক = 0.01 এবং স্লিপ = 5, স্লিপ পরিমাণ হবে 5 * 0.01 = 0.05.
  • commission_type(const string) একটি অর্ডারের জন্য কমিশন প্রকার। অনুমোদিত মানগুলি হলঃ strategy.commission.percent (অর্ডারের নগদ ভলিউমের শতাংশ), strategy.commission.cash_per_contract (অর্ডারের জন্য অ্যাকাউন্ট মুদ্রায় প্রদর্শিত অর্থ), strategy.commission.cash_per_order (অর্ডারের জন্য অ্যাকাউন্ট মুদ্রায় প্রদর্শিত অর্থ) ।
  • commission_value(const int/float) একটি অর্ডারের জন্য কমিশন মান। নির্বাচিত প্রকারের উপর নির্ভর করে (কমিশন_টাইপ) শতাংশ বা অর্থ অন্তর্ভুক্ত করে।
  • process_orders_on_close(const bool) যখন সেট করা হয়true, একটি বার বন্ধ হওয়ার পরে এবং কৌশল গণনা সম্পন্ন হওয়ার পরে অর্ডারগুলি কার্যকর করার জন্য একটি অতিরিক্ত প্রচেষ্টা তৈরি করে। যদি অর্ডারগুলি বাজার অর্ডার হয় তবে ব্রোকার এমুলেটর পরবর্তী বারটি খোলার আগে সেগুলি কার্যকর করে। যদি অর্ডারগুলি দামের উপর নির্ভর করে তবে দামের শর্তগুলি পূরণ হলেই সেগুলি পূরণ করা হবে। আপনি যদি বর্তমান বারে অবস্থানগুলি বন্ধ করতে চান তবে এই বিকল্পটি দরকারী। ডিফল্ট মানটি false
  • close_entries_rule(const string) অর্ডারগুলি বন্ধ হওয়ার ক্রম নির্ধারণ করে। অনুমোদিত মানগুলি হলঃ FIFO বা ANY। FIFO (প্রথম-ইন, প্রথম-আউট) এর অর্থ হল যখন বেশ কয়েকটি ট্রেড খোলা থাকে, তখন প্রথম ট্রেডগুলি প্রথমে বন্ধ করা উচিত। এই নিয়মটি স্টক, ফিউচার এবং মার্কিন ফরেক্সের জন্য প্রযোজ্য (এনএফএ কমপ্লায়েন্স রুল 2-43 বি) । ANY এর অর্থ হ'ল ট্রেডগুলি যে কোনও ক্রমে বন্ধ করা যেতে পারে; এটি মার্কিন ফরেক্সে অনুমোদিত। ডিফল্ট মানটি FIFO
  • max_lines_count(const int) প্রদর্শিত শেষ লাইন অঙ্কন সংখ্যা। ডিফল্ট মান 50 এবং সর্বোচ্চ অনুমোদিত 500।
  • max_labels_count(const int) প্রদর্শিত শেষ লেবেল অঙ্কন সংখ্যা। ডিফল্ট মান 50 এবং সর্বোচ্চ অনুমোদিত 500।
  • max_boxes_count(const int) প্রদর্শিত শেষ বক্স অঙ্কন সংখ্যা। ডিফল্ট মান 50 এবং সর্বোচ্চ অনুমোদিত 500।
  • margin_long(const int/float) মার্জিন লং হল একটি সিকিউরিটির ক্রয় মূল্যের শতাংশ যা লং পজিশনের জন্য নগদ বা কোয়ালিটারিয়াল দ্বারা আবৃত হতে হবে। এটি একটি অ-নেতিবাচক সংখ্যা হতে হবে। ঐচ্ছিক। ডিফল্ট হল 100। -~~margin_short~~ (const int/float) মার্জিন শর্ট হল একটি সিকিউরিটির ক্রয় মূল্যের শতাংশ যা শর্ট পজিশনের জন্য নগদ বা জামানত দ্বারা আচ্ছাদিত হতে হবে। এটি অবশ্যই একটি অ-নেতিবাচক সংখ্যা হতে হবে। ঐচ্ছিক। ডিফল্টটি 100।
  • explicit_plot_zorder(const bool) নির্দেশক এর প্লট, ফিল এবং হ্লাইন রেন্ডার করার ক্রম নির্দিষ্ট করে। যদি সত্য হয়, তাহলে প্লটগুলি নির্দেশক এর কোডে প্রদর্শিত ক্রমের উপর ভিত্তি করে আঁকা হবে, প্রতিটি নতুন প্লট পূর্ববর্তীগুলির উপরে আঁকা হবে। এটি শুধুমাত্র প্লট*() ফাংশন, ফিল এবং হ্লাইনে প্রযোজ্য। ঐচ্ছিক। ডিফল্ট হলfalse.
  • initial_capital(const int/float) মূলত ট্রেডিং কৌশল জন্য উপলব্ধ তহবিল পরিমাণ, মুদ্রা মধ্যে সংজ্ঞায়িতcurrency. ঐচ্ছিক. ডিফল্ট হল 1000000.
  • risk_free_rate(const int/float) ঝুঁকিমুক্ত রিটার্ন রেট হ'ল ন্যূনতম বা শূন্য ঝুঁকি সহ একটি বিনিয়োগের মূল্যের বার্ষিক শতাংশ পরিবর্তন, যা শার্প এবং সোর্টিনো অনুপাত গণনা করতে ব্যবহৃত হয়। ডিফল্ট মান 2।

মন্তব্যসমূহপ্রতিটি কৌশল স্ক্রিপ্ট একটি কৌশল কল থাকতে হবে. পাইন স্ক্রিপ্ট কোড যা যুক্তি calc_on_every_tick = true ব্যবহার করে ইতিহাস এবং রিয়েল-টাইম ডেটাতে ভিন্নভাবে গণনা করতে পারে। কৌশল ভিত্তিতে অ-মানক চার্ট প্রকার ব্যবহার করার সময়, আপনাকে বুঝতে হবে যে ফলাফলটি ভিন্ন হবে। অর্ডারগুলি এই চার্টের দামগুলিতে কার্যকর করা হবে (উদাহরণস্বরূপ, হেইকিন আশির জন্য এটি হেইকিন আশির দাম (গড়গুলি) নেবে, প্রকৃত বাজার মূল্য নয়) । অতএব আমরা আপনাকে কৌশলগুলির জন্য স্ট্যান্ডার্ড চার্ট টাইপ ব্যবহার করার পরামর্শ দিই।

আরও দেখুন indicator

strategy.entry

এটি মার্কেট পজিশনে প্রবেশের একটি কমান্ড। যদি একই আইডি সহ একটি অর্ডার ইতিমধ্যে মুলতুবি থাকে তবে অর্ডারটি পরিবর্তন করা সম্ভব। যদি নির্দিষ্ট আইডি সহ কোনও অর্ডার না থাকে তবে একটি নতুন অর্ডার স্থাপন করা হয়। একটি এন্ট্রি অর্ডার নিষ্ক্রিয় করতে, কমান্ড strategy.cancel বা strategy.cancel_all ব্যবহার করা উচিত। ফাংশন strategy.order এর তুলনায়, ফাংশন strategy.entry পিরামিডিং দ্বারা প্রভাবিত হয় এবং এটি সঠিকভাবে মার্কেট পজিশন বিপরীত করতে পারে। যদি limit এবং stop আর্গুমেন্ট উভয়ই NaN হয় তবে অর্ডার প্রকারটি মার্কেট অর্ডার।

strategy.entry(id, direction, qty, limit, stop, oca_name, oca_type, comment, when, alert_message) 

উদাহরণ

strategy(title = "simple strategy entry example")
strategy.entry("enter long", strategy.long, 1, when = open > high[1]) // enter long by market if current open great then previous high
strategy.entry("enter short", strategy.short, 1, when = open < low[1]) // enter short by market if current open less then previous low

যুক্তি

  • id(সারি স্ট্রিং) একটি প্রয়োজনীয় আর্গুমেন্ট। অর্ডার সনাক্তকারী। এটির সনাক্তকারীকে উল্লেখ করে একটি অর্ডার বাতিল বা সংশোধন করা সম্ভব।
  • direction(strategy_direction) একটি প্রয়োজনীয় আর্গুমেন্ট। মার্কেট পজিশনের দিকঃ strategy.long দীর্ঘ, strategy.short সংক্ষিপ্ত।
  • qty(series int/float) একটি ঐচ্ছিক আর্গুমেন্ট। ট্রেড করার জন্য চুক্তি/অংশ/লট/ইউনিট সংখ্যা। ডিফল্ট মান NaN
  • limit(series int/float) একটি ঐচ্ছিক যুক্তি। অর্ডারের সীমা মূল্য। যদি এটি নির্দিষ্ট করা হয়, অর্ডার টাইপ হয় limit, অথবা stop-limit। অন্য কোন অর্ডার টাইপের জন্য NaN নির্দিষ্ট করা উচিত।
  • stop(series int/float) একটি ঐচ্ছিক যুক্তি। অর্ডারের স্টপ মূল্য। যদি এটি নির্দিষ্ট করা হয়, অর্ডার টাইপ হয় stop, অথবা stop-limit। অন্য কোন অর্ডার টাইপের জন্য NaN নির্দিষ্ট করা উচিত।
  • oca_name(সিরিজ স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট। অর্ডারটি যে OCA গ্রুপের অন্তর্গত তার নাম। যদি অর্ডারটি কোনো নির্দিষ্ট OCA গ্রুপের অন্তর্গত না হয়, তাহলে একটি খালি স্ট্রিং থাকা উচিত।মনে রাখবেন যে এফএমজেড এই যুক্তি সমর্থন করে না।~~
  • oca_type(ইনপুট স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট। OCA গ্রুপের ধরন। অনুমোদিত মানগুলি হলঃ strategy.oca.none - অর্ডারটি কোনো নির্দিষ্ট OCA গ্রুপের অন্তর্গত হওয়া উচিত নয়; strategy.oca.cancel - অর্ডারটি একটি OCA গ্রুপের অন্তর্গত হওয়া উচিত, যেখানে যত তাড়াতাড়ি একটি অর্ডার পূরণ করা হয়, একই গ্রুপের অন্যান্য সমস্ত অর্ডার বাতিল করা হয়; strategy.oca.reduce - অর্ডারটি একটি OCA গ্রুপের অন্তর্গত হওয়া উচিত, যেখানে যদি একটি অর্ডারের X সংখ্যক চুক্তি পূরণ করা হয়, তবে একই OCA গ্রুপের প্রতিটি অন্যান্য অর্ডারের জন্য চুক্তির সংখ্যা X দ্বারা হ্রাস করা হয়।মনে রাখবেন যে এফএমজেড এই যুক্তি সমর্থন করে না।
  • comment(সারি স্ট্রিং) একটি ঐচ্ছিক যুক্তি. আদেশ উপর অতিরিক্ত নোট.
  • when(series bool) একটি ঐচ্ছিক আর্গুমেন্ট। অর্ডারের শর্ত। শর্ত true হলে অর্ডার স্থাপন করা হয়। শর্ত false হলে কিছুই ঘটে না (একই আইডি সহ পূর্বে স্থাপন করা অর্ডার বাতিল করা হয় না) । ডিফল্ট মান true
  • alert_message(সিরিজ স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট যা Create Alert ডায়ালগ বক্সে Message ক্ষেত্রে ব্যবহৃত হলে {{strategy.order.alert_message}} স্থানধারককে প্রতিস্থাপন করে।

strategy.close

এটি নির্দিষ্ট আইডি সহ এন্ট্রি থেকে প্রস্থান করার একটি কমান্ড। যদি একই আইডি সহ একাধিক এন্ট্রি অর্ডার থাকে তবে সেগুলি একসাথে প্রস্থান করা হয়। যদি কমান্ডটি ট্রিগার হওয়ার মুহুর্তে নির্দিষ্ট আইডি সহ কোনও খোলা এন্ট্রি না থাকে তবে কমান্ডটি কার্যকর হবে না। কমান্ডটি বাজার অর্ডার ব্যবহার করে। প্রতিটি এন্ট্রি পৃথক বাজার অর্ডার দ্বারা বন্ধ হয়।

strategy.close(id, when, comment, qty, qty_percent, alert_message) 

উদাহরণ

strategy("closeEntry Demo", overlay=false)
strategy.entry("buy", strategy.long, when = open > close)
strategy.close("buy", when = open < close, qty_percent = 50, comment = "close buy entry for 50%")
plot(strategy.position_size)

যুক্তি

  • id(সিরিজ স্ট্রিং) একটি প্রয়োজনীয় আর্গুমেন্ট। অর্ডার সনাক্তকারী। এটির সনাক্তকারীকে উল্লেখ করে একটি অর্ডার বন্ধ করা সম্ভব।
  • when(সারি bool) একটি ঐচ্ছিক যুক্তি. কমান্ডের শর্ত.
  • qty(series int/float) একটি ঐচ্ছিক আর্গুমেন্ট। একটি ট্রেড থেকে বেরিয়ে আসার জন্য কন্ট্রাক্ট/অংশ/লট/ইউনিটের সংখ্যা। ডিফল্ট মান NaN
  • qty_percent(series int/float) বন্ধ করার পজিশনের শতাংশ (0-100) সংজ্ঞায়িত করে। এর অগ্রাধিকার qty আর্গুমেন্টের চেয়ে কম। ঐচ্ছিক। ডিফল্ট হল 100.
  • comment(সারি স্ট্রিং) একটি ঐচ্ছিক যুক্তি. আদেশ উপর অতিরিক্ত নোট.
  • alert_message(সিরিজ স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট যা Create Alert ডায়ালগ বক্সে Message ক্ষেত্রে ব্যবহৃত হলে {{strategy.order.alert_message}} স্থানধারককে প্রতিস্থাপন করে।

কৌশল.close_all

বর্তমান বাজার অবস্থান থেকে বেরিয়ে আসে, এটি সমতল করে তোলে।

strategy.close_all(when, comment, alert_message) 

উদাহরণ

strategy("closeAll Demo", overlay=false)
strategy.entry("buy", strategy.long, when = open > close)
strategy.close_all(when = open < close, comment = "close all entries")
plot(strategy.position_size)

যুক্তি

  • when(সারি bool) একটি ঐচ্ছিক যুক্তি. কমান্ডের শর্ত.
  • comment(সারি স্ট্রিং) একটি ঐচ্ছিক যুক্তি. আদেশ উপর অতিরিক্ত নোট.
  • alert_message(সিরিজ স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট যা Create Alert ডায়ালগ বক্সে Message ক্ষেত্রে ব্যবহৃত হলে {{strategy.order.alert_message}} স্থানধারককে প্রতিস্থাপন করে।

strategy.exit

এটি একটি নির্দিষ্ট এন্ট্রি বা পুরো বাজার অবস্থান থেকে বেরিয়ে আসার একটি কমান্ড। যদি একই আইডি সহ একটি অর্ডার ইতিমধ্যে মুলতুবি থাকে তবে অর্ডারটি পরিবর্তন করা সম্ভব। যদি কোনও এন্ট্রি অর্ডার পূরণ না করা হয় তবে একটি প্রস্থান অর্ডার উত্পন্ন হয় তবে প্রস্থান অর্ডারটি প্রবেশের অর্ডারটি পূরণ না হওয়া পর্যন্ত অপেক্ষা করবে এবং তারপরে প্রস্থান অর্ডার স্থাপন করা হবে। একটি প্রস্থান অর্ডার নিষ্ক্রিয় করতে, কমান্ড strategy.cancel বা strategy.cancel_all ব্যবহার করা উচিত। যদি ফাংশনটিstrategy.exitযদি আপনি একাধিকবার প্রস্থান করতে চান, কমান্ডstrategy.exitযদি আপনি একটি স্টপ লস এবং একটি ট্রেইলিং স্টপ ব্যবহার করেন, তাদের অর্ডার টাইপ স্টপ, তাই তাদের মধ্যে কেবল একটি স্থাপন করা হয় (যা প্রথমে পূরণ করা উচিত) । যদি নিম্নলিখিত সমস্ত আর্গুমেন্ট লাভ, সীমা, ক্ষতি, স্টপ, ট্রেইল_পয়েন্ট, ট্রেইল_অফসেট নাএন হয়, তাহলে কমান্ডটি ব্যর্থ হবে। মার্কেট অর্ডারটি বেরিয়ে আসার জন্য, কমান্ড strategy.close বা strategy.close_all ব্যবহার করা উচিত।

strategy.exit(id, from_entry, qty, qty_percent, profit, limit, loss, stop, trail_price, trail_points, trail_offset, oca_name, comment, when, alert_message) 

উদাহরণ

strategy(title = "simple strategy exit example")
strategy.entry("long", strategy.long, 1, when = open > high[1]) // enter long by market if current open great then previous high
strategy.exit("exit", "long", profit = 10, loss = 5) // generate full exit bracket (profit 10 points, loss 5 points per contract) from entry with name "long"

যুক্তি

  • id(সারি স্ট্রিং) একটি প্রয়োজনীয় আর্গুমেন্ট। অর্ডার সনাক্তকারী। এটির সনাক্তকারীকে উল্লেখ করে একটি অর্ডার বাতিল বা সংশোধন করা সম্ভব।
  • from_entry(সিরিজ স্ট্রিং) একটি ঐচ্ছিক আর্গুমেন্ট। এটি থেকে প্রস্থান করার জন্য একটি নির্দিষ্ট এন্ট্রি অর্ডারের সনাক্তকারী। সমস্ত এন্ট্রি থেকে প্রস্থান করার জন্য একটি খালি স্ট্রিং ব্যবহার করা উচিত। ডিফল্ট মানগুলি খালি স্ট্রিং।
  • qty(series int/float) একটি ঐচ্ছিক আর্গুমেন্ট। একটি ট্রেড থেকে বেরিয়ে আসার জন্য কন্ট্রাক্ট/অংশ/লট/ইউনিটের সংখ্যা। ডিফল্ট মান NaN
  • qty_percent(series int/float) পজিশন বন্ধ করার জন্য (0-100) এর শতাংশ সংজ্ঞায়িত করে। এর অগ্রাধিকার qty আর্গুমেন্টের চেয়ে কম। ঐচ্ছিক। ডিফল্ট হল 100.
  • profit(series int/float) একটি ঐচ্ছিক আর্গুমেন্ট। লাভের লক্ষ্যমাত্রা (টিকগুলিতে নির্দিষ্ট করা হয়েছে) । যদি এটি নির্দিষ্ট করা হয়, তবে নির্দিষ্ট মুনাফার পরিমাণ (টিকগুলিতে) পৌঁছে গেলে বাজারের অবস্থান থেকে বেরিয়ে আসার জন্য একটি সীমা অর্ডার স্থাপন করা হয়। ডিফল্ট মানটি NaN
  • limit(সিরিজ ইনট/ফ্লোট) একটি ঐচ্ছিক আর্গুমেন্ট। মুনাফা লক্ষ্য (একটি নির্দিষ্ট মূল্য প্রয়োজন) । যদি এটি নির্দিষ্ট করা হয়, তবে নির্দিষ্ট মূল্য (বা আরও ভাল) এ বাজার অবস্থান থেকে বেরিয়ে আসার জন্য একটি সীমা অর্ডার স্থাপন করা হয়। আর্গুমেন্ট সীমা এর অগ্রাধিকার লাভ এর অগ্রাধিকারের চেয়ে বেশি (সীমা এর পরিবর্তে ব্যবহৃত হয় লাভ, যদি এর মান নাএন না হয়) । ডিফল্ট মান হল নাএন
  • loss(series int/float) একটি ঐচ্ছিক আর্গুমেন্ট। স্টপ লস (টিকগুলিতে নির্দিষ্ট করা হয়েছে) । যদি এটি নির্দিষ্ট করা হয়, তবে নির্দিষ্ট পরিমাণ ক্ষতি (টিকগুলিতে) পৌঁছে গেলে বাজারের অবস্থান থেকে বেরিয়ে আসার জন্য একটি স্টপ অর্ডার স্থাপন করা হয়। ডিফল্ট মানটি NaN
  • stop(সিরিজ ইনট/ফ্লোট) একটি ঐচ্ছিক আর্গুমেন্ট। স্টপ লস (একটি নির্দিষ্ট মূল্য প্রয়োজন) । যদি এটি নির্দিষ্ট করা হয়, তবে একটি স্টপ অর্ডার নির্দিষ্ট মূল্য (বা আরও খারাপ) এ বাজার অবস্থান থেকে বেরিয়ে আসার জন্য স্থাপন করা হয়। আর্গুমেন্ট স্টপ এর অগ্রাধিকার লস এর অগ্রাধিকারের চেয়ে বেশি (স্টপ এর পরিবর্তে ব্যবহৃত হয় লস, যদি এর মান নাএন না হয়) । ডিফল্ট

আরো

ভিক্ষুককেন কৌশল স্কোয়ার অনুলিপি পাইন কৌশল বাস্তবায়ন করতে পারে না

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নঠিক আছে, আমরা পরীক্ষা করে দেখি।

ভিক্ষুকচ্যাং সুপারড্যাং এর অপ্টিমাইজড ট্রেন্ড ট্র্যাকার

উদ্ভাবকগণ - ক্যোটিফিকেশন - ছোট্ট স্বপ্নহ্যালো, কোন কৌশলটি আপনি ব্যবহার করছেন?