लौटाता हैसरणी के तत्वों के मध्यवर्ती संख्याएं.
पैरामीटर
id
(int[]/float[]) सरणी ऑब्जेक्ट।अलविदा
array.avg
array.variance
array.min
यह फ़ंक्शन सरणी तत्वों के पैटर्न को लौटाता है. यदि एक ही आवृत्ति के कई मान हैं, तो न्यूनतम लौटाता है.
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(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(id, percentage)
पैरामीटर
id
(int[]/float[]) सरणी ऑब्जेक्ट।percentage
(series int/float) का प्रतिशत लौटाए गए मान के बराबर या उससे कम होना चाहिए.नोट्ससांख्यिकी में, प्रतिशत किसी स्कोर पर या किसी स्कोर से नीचे की श्रेणी में आने वाले रैंकिंग विषयों का प्रतिशत होता है। यह माप आपके द्वारा मापे जा रहे प्रतिशत रैंकिंग के मानक आवृत्ति वितरण में प्रतिशत के प्रतिशत को दर्शाता है।
अलविदा
array.new_float
array.insert
array.slice
array.reverse
order.ascending
order.descending
सरणी के मध्यवर्ती मान का प्रतिशत क्रम देता है.
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(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(id, index)
उदाहरण
// array.remove example
a = array.new_float(5,high)
removedEl = array.remove(a, 0)
plot(array.size(a))
plot(removedEl)
लौटाता हैहटाए गए तत्वों का मान।
पैरामीटर
id
(any array type) सरणी ऑब्जेक्ट ।index
(series int) हटाए जाने वाले तत्वों का सूचकांक।अलविदा
array.new_float
array.set
array.push
array.insert
array.pop
array.shift
यह फ़ंक्शन सरणी को उलटा करता है. पहला सरणी तत्व अंतिम बन जाता है और अंतिम सरणी तत्व पहला बन जाता है.
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
(any array type) सरणी ऑब्जेक्ट ।अलविदा
array.new_float
array.sort
array.push
array.set
array.avg
यह फ़ंक्शन इन प्रकारों में से किसी एक प्रकार के चर संख्या के लिए पैरामीटर का उपयोग करता हैः int, float, boole, string, line, color, 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, ...
(series int/float/bool/color/string/line/linefill) पूर्णांक पैरामीटरयह फ़ंक्शन एक नया फ़ंक्शन बनाता है<type>
तत्व सरणी वस्तुएं ।
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
(series नोट्ससरणी सूचकांक 0 से शुरू होता है. यदि आप किसी सरणी को आरंभ करना चाहते हैं और उसके सभी तत्वों को एक साथ निर्दिष्ट करना चाहते हैं, तो array.from का उपयोग करें।
अलविदा
array.from
array.push
array.get
array.size
array.remove
array.shift
array.sum
यह फ़ंक्शन एक नई सरणी ऑब्जेक्ट बनाता है जिसमें एक बूल प्रकार का तत्व होता है.
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
(series bool) सभी अनुक्रम तत्वों का प्रारंभिक मान↑ वैकल्पिक↑ डिफ़ॉल्ट मान है नोट्ससरणी सूचकांक 0 से शुरू होता है.
अलविदा
array.new_float
array.get
array.slice
array.sort
यह फ़ंक्शन एक नया फ्लोटिंग तत्व सरणी ऑब्जेक्ट बनाता है।
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) सभी श्रृंखला तत्वों के लिए प्रारंभिक मान↑ वैकल्पिक↑ डिफ़ॉल्ट मान है नोट्ससरणी सूचकांक 0 से शुरू होता है.
अलविदा
array.new_bool
array.get
array.slice
array.sort
यह फ़ंक्शन 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) सभी श्रृंखला तत्वों का प्रारंभिक मान↑ वैकल्पिक↑ डिफ़ॉल्ट मान है नोट्ससरणी सूचकांक 0 से शुरू होता है.
अलविदा
array.new_float
array.get
array.slice
array.sort
यह फ़ंक्शन एक स्ट्रिंग प्रकार के तत्व के लिए एक नया सरणी ऑब्जेक्ट बनाता है।
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
(series string) सभी अनुक्रम तत्वों का प्रारंभिक मान↑ वैकल्पिक↑ डिफ़ॉल्ट मान है नोट्ससरणी सूचकांक 0 से शुरू होता है.
अलविदा
array.new_float
array.get
array.slice
यह फ़ंक्शन निर्दिष्ट सूचकांक बिंदु तत्व का मान लौटाता है.
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
(any array type) सरणी ऑब्जेक्ट ।index
(series int) उस तत्व का सूचकांक है जिसका मान लौटाया जाना है.अलविदा
array.new_float
array.set
array.slice
array.sort
यह फ़ंक्शन एक मान को सरणी में जोड़ता है।
array.push(id, value)
उदाहरण
// array.push example
a = array.new_float(5, 0)
array.push(a, open)
plot(array.get(a, 5))
पैरामीटर
id
(any array type) सरणी ऑब्जेक्ट ।value
(series <type of the array's elements>
) को सरणी के अंत में तत्व मानों में जोड़ा जाता है.अलविदा
array.new_float
array.set
array.insert
array.remove
array.pop
array.unshift
यह फ़ंक्शन तत्व के मान को निर्दिष्ट सूचकांक के रूप में सेट करता है.
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
(any array type) सरणी ऑब्जेक्ट ।index
(series int) तत्वों के सूचकांक को संशोधित करने के लिए।value
(series <type of the array's elements>
) सेट करने के लिए नया मान।अलविदा
array.new_float
array.get
array.slice
यह फ़ंक्शन सरणी तत्वों के योग को लौटाता है.
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(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
यह फ़ंक्शन उस सूचकांक को लौटाता है जहां मान पहली बार आया था. यदि यह नहीं मिला है, तो -1 लौटाता है.
array.indexof(id, value)
उदाहरण
// array.indexof example
a = array.new_float(5,high)
index = array.indexof(a, high)
plot(index)
लौटाता हैतत्वों का सूचकांक ।
पैरामीटर
id
(any array type) सरणी ऑब्जेक्ट ।value
(series <type of the array's elements>
) सरणी में खोजे जाने वाले मानों के लिए।अलविदा
array.lastindexof
array.get
array.lastindexof
array.remove
array.insert
मेंstrategy
संबंधित अंतर्निहित कार्यों में, स्टॉप-लॉस पॉइंट नंबर, स्टॉप-टॉप पॉइंट नंबर को एक बार की कीमत के गुणक के रूप में परिभाषित किया गया है; उदाहरण के लिए।strategy.exit
फ़ंक्शन काprofit
、loss
पैरामीटर के बिंदुओं को रोकना, रोकना, पैरामीटरprofit
10 पर सेट करें, यानी कीमत में एक छलांग 10 से गुणा करें, जो कि स्टॉप-अप मूल्य अंतर है, और कीमत में एक छलांग अंतर्निहित चर हैsyminfo.mintick
。
यह फ़ंक्शन कई नीतिगत गुणों को सेट करता है.
ध्यान दें, केवल समर्थनtitle
,shorttitle
,overlay
,pyramiding
,default_qty_type
,default_qty_value
पैरामीटर, अन्य पैरामीटर को पाइन भाषा नीति के इंटरफ़ेस पैरामीटर के माध्यम से सेट किया जा सकता है।
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) यदि true है, तो यह निर्देशांक मुख्य सरणी के ओवरले में जोड़ा जाता है. यदि false है - यह एक अलग चार्ट विंडो में जोड़ा जाता है. डिफ़ॉल्ट रूप से false.format
precision
scale
pyramiding
(const int) एक ही दिशा में अनुमति दी गई अधिकतम संख्या. यदि यह मान 0 है, तो एक ही दिशा में केवल एक ही प्रवेश आदेश खोला जा सकता है, और किसी भी अन्य प्रवेश आदेश को अस्वीकार कर दिया जाएगा. डिफ़ॉल्ट मान 0 है.calc_on_order_fills
calc_on_every_tick
max_bars_back
backtest_fill_limits_assumption
default_qty_type
(const string) के लिए निर्धारित किया गया हैqty
पैरामीटर का मान रणनीति.प्रविष्टि या रणनीति.आदेश फ़ंक्शन में दर्शाया गया है। संभावित मान हैंः रणनीति.फिक्स्ड अनुबंध/स्टॉक/हैंड्स की संख्या को दर्शाता है, रणनीति.कैश मौद्रिक राशि को दर्शाता है, या रणनीति.प्रतिशत_ऑफ_इक्विटी उपलब्ध हक के प्रतिशत को दर्शाता है।default_qty_value
(const int/float) strategy.entry या strategy.order फ़ंक्शन के लिए डिफ़ॉल्ट लेनदेन की संख्या, जब उनके currency
slippage
commission_type
commission_value
process_orders_on_close
close_entries_rule
max_lines_count
max_labels_count
max_boxes_count
margin_long
margin_short
explicit_plot_zorder
initial_capital
risk_free_rate
नोट्सहर रणनीति स्क्रिप्ट में एक रणनीति कॉल होना चाहिए। पैरामीटर का उपयोग करके पाइनस्क्रिप्ट कोड calc_on_every_tick = true इतिहास रिकॉर्ड और वास्तविक समय डेटा के लिए अलग-अलग गणना कर सकते हैं। जब आप रणनीति के आधार के रूप में गैर-मानक प्रकार के चार्ट का उपयोग करते हैं, तो आपको यह जानना आवश्यक है कि परिणाम अलग-अलग होंगे। ऑर्डर उस तालिका के मूल्य पर निष्पादित होंगे (उदाहरण के लिए, हेकिन एशी के लिए हेकिन एशी की कीमत का उपयोग किया जाएगा (औसत) वास्तविक बाजार मूल्य नहीं है) । इसलिए, हम दृढ़ता से अनुशंसा करते हैं कि आप अपनी रणनीति में मानक चार्ट प्रकार का उपयोग करें।
अलविदा
indicator
यह बाजार में प्रवेश करने का आदेश है. यदि एक ही आईडी के साथ ऑर्डर पहले से ही लटका हुआ है, तो ऑर्डर को संशोधित किया जा सकता है. यदि कोई आईडी निर्दिष्ट नहीं है, तो एक नया ऑर्डर जारी किया जाएगा. प्रवेश निर्देशों को बंद करने के लिए, आदेश strategy.cancel या strategy.cancel_all का उपयोग करना चाहिए. रणनीति.entry फ़ंक्शन पिरामिड से प्रभावित है और बाजार की स्थिति को सही ढंग से उलट सकता है, जबकि रणनीति.ऑर्डर फ़ंक्शन के विपरीत। यदि एलईडी लिमिट और एलईडी स्टॉप पैरामीटर दोनों एलईडी 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
(series string) आवश्यक पैरामीटर↑ ऑर्डर आइडेंटिफ़ायर↑ ऑर्डर को रद्द या संशोधित किया जा सकता है, इसके आइडेंटिफ़ायर का हवाला देकर↑direction
(strategy_direction) एक आवश्यक पैरामीटर. बाजार में होल्डिंग की दिशाः'strategy.long ताला बहुआयामी है,''strategy.short ताला रिक्त ताला है' ।qty
(series int/float) वैकल्पिक पैरामीटर↑ सौदे के लिए अनुबंध/शेयर संख्या/बंद संख्या/इकाइयों की संख्या↑ पूर्वनिर्धारित मान है limit
(series int/float) वैकल्पिक पैरामीटर↑ आदेश की सीमाएँ↑ यदि निर्दिष्ट है, तो आदेश का प्रकार "सीमा" या "रोक-सीमा" है↑ अन्य आदेश प्रकार "NaN" हैं↑stop
(series int/float) वैकल्पिक पैरामीटर↑ आदेश का स्टॉप-लॉस मूल्य↑ यदि निर्दिष्ट किया गया है, तो आदेश प्रकार "स्टॉप" या "स्टॉप-लिमिट" होगा。 अन्य आदेश प्रकार "NaN" होंगे。oca_name
oca_type
comment
(series string) वैकल्पिक पैरामीटर. आदेश के अन्य विवरण.when
(series bool) वैकल्पिक पैरामीटर↑ ऑर्डर की स्थिति↑ यदि "true" है, तो ऑर्डर रखा गया है↑ यदि "false" है, तो कुछ भी नहीं हुआ ((पहले रखे गए एक ही आईडी वाले ऑर्डर को रद्द नहीं किया गया है)↑ डिफ़ॉल्ट मान "true" है。alert_message
(series string) एक वैकल्पिक पैरामीटर जब आप चेतावनी बॉक्स बनाने के लिए चेतावनी बॉक्स संवाद बॉक्स में चेतावनी संदेश बॉक्स के क्षेत्र में {{strategy.order.alert_message}} का उपयोग करते हैं।यह एक निर्दिष्ट आईडी के साथ बाहर निकलने के आदेश का आदेश है। यदि एक ही आईडी के साथ कई प्रवेश आदेश हैं, तो वे सभी एक ही समय में बाहर निकलेंगे। यदि आदेश को ट्रिगर करते समय आईडी निर्दिष्ट नहीं किया गया है, तो आदेश निष्पादित नहीं होगा। यह आदेश बाजार आदेश का उपयोग करता है। प्रत्येक प्रवेश को अलग-अलग बाजार आदेशों द्वारा बंद कर दिया जाता है।
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
(series string) आवश्यक पैरामीटर↑ ऑर्डर आइडेंटिफ़ायर↑ ऑर्डर को उसके आइडेंटिफ़ायर का हवाला देकर बंद किया जा सकता है↑when
(series bool) चयन योग्य पैरामीटर. आदेश की शर्त.qty
(series int/float) वैकल्पिक पैरामीटर↑ व्यापार से बाहर निकलने के लिए अनुबंध/शेयर संख्या/अंक संख्या/इकाइयों की संख्या↑ डिफ़ॉल्ट मान है qty_percent
(series int/float) समता का प्रतिशत परिभाषित करता है ((0-100) ). इसकी प्राथमिकता comment
(series string) वैकल्पिक पैरामीटर. आदेश के अन्य विवरण.alert_message
(series string) एक वैकल्पिक पैरामीटर जब आप चेतावनी बॉक्स बनाने के लिए चेतावनी बॉक्स संवाद बॉक्स में चेतावनी संदेश बॉक्स के क्षेत्र में {{strategy.order.alert_message}} का उपयोग करते हैं।इस तरह की स्थिति में, हम अपने मौजूदा बाजार की स्थिति से बाहर निकलते हैं और इसे समतल करते हैं।
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
(series bool) चयन योग्य पैरामीटर. आदेश की शर्त.comment
(series string) वैकल्पिक पैरामीटर. आदेश के अन्य विवरण.alert_message
(series string) एक वैकल्पिक पैरामीटर जब आप चेतावनी बॉक्स बनाने के लिए चेतावनी बॉक्स संवाद बॉक्स में चेतावनी संदेश बॉक्स के क्षेत्र में {{strategy.order.alert_message}} का उपयोग करते हैं।यह एक बाहर निकलने का आदेश है जो प्रवेश या पूरे बाजार की स्थिति को निर्दिष्ट करता है. यदि एक ही आईडी वाले ऑर्डर पहले से ही लटका हुआ है, तो ऑर्डर को संशोधित किया जा सकता है. यदि प्रवेश आदेश निष्पादित नहीं होता है, लेकिन एक बाहर निकलने का आदेश आता है, तो यह बाहर निकलने का आदेश तब तक रोक दिया जाता है जब तक कि प्रवेश आदेश निष्पादित नहीं हो जाता है। बाहर निकलने के आदेश का उपयोग करने के लिए, आदेश strategy.cancel या strategy.cancel_all का उपयोग करना चाहिए। यदि फ़ंक्शन strategy.exit को एक बार बुलाया जाता है, तो केवल एक बार बाहर निकलना होगा। यदि कई बार बाहर निकलना है, तो एक बार बाहर निकलना होगा।应该多次调用命令strategy.exitयदि आप स्टॉप-लॉस और ट्रैक-लॉस का उपयोग करते हैं, तो ऑर्डर का प्रकार स्टॉप-लॉस है और उनमें से केवल एक को ही रखा जाएगा (पहले किया जाएगा) । यदि निम्नलिखित सभी पैरामीटर हैं, तो ऑर्डर विफल हो जाएगा।
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
(series string) आवश्यक पैरामीटर↑ ऑर्डर आइडेंटिफ़ायर↑ ऑर्डर को रद्द या संशोधित किया जा सकता है, इसके आइडेंटिफ़ायर का हवाला देकर↑from_entry
(series string) वैकल्पिक पैरामीटर↑ प्रविष्टि निर्देश चिह्न निर्दिष्ट करने के लिए बाहर निकलें↑ सभी पदों से बाहर निकलने के लिए खाली स्ट्रिंग का उपयोग करें↑ डिफ़ॉल्ट मान खाली स्ट्रिंग है↑qty
(series int/float) वैकल्पिक पैरामीटर↑ व्यापार से बाहर निकलने के लिए अनुबंध/शेयर संख्या/अंक संख्या/इकाइयों की संख्या↑ डिफ़ॉल्ट मान है qty_percent
(series int/float) समता का प्रतिशत परिभाषित करता है ((0-100) ). इसकी प्राथमिकता profit
(series int/float) वैकल्पिक पैरामीटर↑ लाभ लक्ष्य (डॉट्स में दर्शाया गया)↑ यदि निर्दिष्ट किया गया है, तो निर्दिष्ट लाभ राशि (डॉट्स) तक पहुंचने पर बाजार स्थिति से बाहर निकलने के लिए एक सीमा आदेश दें↑ डिफ़ॉल्ट मान limit
(series int/float) वैकल्पिक पैरामीटर── लाभ लक्ष्य (मूल्य निर्दिष्ट करना आवश्यक है) ─ यदि निर्दिष्ट किया गया है, तो निर्दिष्ट मूल्य (मूल्य या बेहतर) पर बाजार की स्थिति से बाहर निकलें── पैरामीटर loss
(series int/float) वैकल्पिक पैरामीटर↑ स्टॉप लॉस (डॉट्स से इंगित)↑ यदि निर्दिष्ट किया गया है, तो निर्दिष्ट हानि राशि (डॉट्स) पर पहुंचने पर स्टॉप लॉस के साथ बाजार की स्थिति से बाहर निकलें↑ डिफ़ॉल्ट मान stop
(series int/float) वैकल्पिक पैरामीटर── स्टॉप लॉस ((मूल्य निर्दिष्ट करना आवश्यक है) ─ यदि निर्दिष्ट किया गया है, तो निर्दिष्ट मूल्य ((या इससे भी बदतर) पर बाजार की स्थिति से बाहर निकलें─ पैरामीटर स्टॉप लॉस लॉस की प्राथमिकता पैरामीटर स्टॉप लॉस लॉस लॉस लॉस लॉस लॉस की प्राथमिकता से अधिक है── यदि गैर-स्टॉप लॉस लॉस लॉस लॉस के बजाय स्टॉप लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉस लॉtrail_price
(series int/float) वैकल्पिक पैरामीटर── ट्रैकिंग स्टॉप लॉस सक्रियण स्तर (मूल्य निर्दिष्ट करना आवश्यक है) ─ यदि निर्दिष्ट किया गया है, तो जब निर्दिष्ट मूल्य स्तर तक पहुंच जाता है तो ट्रैकिंग स्टॉप लॉस सेट रखा जाएगा── टैगट्रेल_ऑफसेट टैग पैरामीटर में ट्रैकिंग स्टॉप लॉस के प्रारंभिक मूल्य को निर्धारित करने के लिए विचलन का आकार निर्दिष्ट किया गया है (बिंदु के रूप में): एक्स पॉइंट सक्रियण स्तर से कम है बहु-अंतों से बाहर निकलने के लिए; एक्स पॉइंट सक्रियण स्तर से अधिक है रिक्त स्थान से बाहर निकलने के लिए── डिफ़ॉल्ट मान है trail_points
(series int/float) वैकल्पिक पैरामीटर↑ ट्रैकिंग स्टॉप लॉस सक्रियण स्तर (प्रॉफिट बिंदुओं में दर्शाया गया)↑ यदि निर्दिष्ट किया गया है, तो जब गणना की गई मूल्य स्तर (प्रोफिट राशि निर्दिष्ट की जाती है) तक पहुंच जाता है, तो ट्रैकिंग स्टॉप लॉस सूची रखी जाएगी。 पिनट्रेल_ऑफसेट सूची पैरामीटर में पिनट्रेल_ऑफसेट सूची के प्रारंभिक मूल्य को निर्धारित करने के लिए विचलन की मात्रा निर्दिष्ट की जाती है (पिनट्रेल_ऑफसेट सूची में): एक्स बिंदु सक्रियण स्तर से नीचे बहु-शीर्षक से बाहर निकलने के लिए; एक्स बिंदु सक्रियण स्तर से ऊपर रिक्त स्थान से बाहर निकलने के लिए。 डिफ़ॉल्ट मान पिन NaN पिन है。trail_offset
(series int/float) वैकल्पिक पैरामीटर── ट्रैकिंग स्टॉप-लॉस सक्रियण स्तर (अंकित) ─ पॉइंट-मीटर विचलन का उपयोग ट्रैकिंग स्टॉप-लॉस ऑर्डर के प्रारंभिक मूल्य को निर्धारित करने के लिए किया जाता हैः X बिंदु से कम है trail_price or 'trail_points' टैप करने के लिए; X बिंदु से अधिक है trail_price या 'trail_points' टैप करने के लिए; डिफ़ॉल्ट मान है NaN टैप करना।oca_name
comment
(series string) वैकल्पिक पैरामीटर. आदेश के अन्य विवरण.when
(series bool) वैकल्पिक पैरामीटर↑ ऑर्डर की स्थिति↑ यदि "true" है, तो ऑर्डर रखा गया है↑ यदि "false" है, तो कुछ भी नहीं हुआ ((पहले रखे गए एक ही आईडी वाले ऑर्डर को रद्द नहीं किया गया है)↑ डिफ़ॉल्ट मान "true" है。alert_message
(series string) एक वैकल्पिक पैरामीटर जब आप चेतावनी बॉक्स बनाने के लिए चेतावनी बॉक्स संवाद बॉक्स में चेतावनी संदेश बॉक्स के क्षेत्र में {{strategy.order.alert_message}} का उपयोग करते हैं।यह एक संदर्भ नाम है जो सभी पूर्वनिर्मित आदेशों को रद्द/निष्क्रिय करने के लिए है, जो निम्नलिखित कार्यों द्वारा उत्पन्न होता हैः strategy.order, strategy.entry andstrategy.exit。
strategy.cancel(id, when)
उदाहरण
strategy(title = "simple order cancellation example")
conditionForBuy = open > high[1]
strategy.entry("long", strategy.long, 1, limit = low, when = conditionForBuy) // enter long using limit order at low price of current bar if conditionForBuy is true
strategy.cancel("long", when = not conditionForBuy) // cancel the entry order with name "long" if conditionForBuy is false
पैरामीटर
id
(series string) अपरिहार्य पैरामीटर↑ आदेश चिह्न↑ आदेश को रद्द करने के लिए इस चिह्न का पता लगाएं↑when
(series bool) वैकल्पिक पैरामीटर↑ आईडी के आधार पर एक आदेश रद्द करना↑ यदि "सही" है, तो यह आदेश रद्द कर दिया जाएगा↑ डिफ़ॉल्ट मान "सही" है↑这是取消/停用所有预挂单命令,由以下功能生成:strategy.order,strategy.entry和strategy.exit。
strategy.cancel_all(when)
उदाहरण
strategy(title = "simple all orders cancellation example")
conditionForBuy1 = open > high[1]
strategy.entry("long entry 1", strategy.long, 1, limit = low, when = conditionForBuy1) // enter long by limit if conditionForBuy1 is true
conditionForBuy2 = conditionForBuy1 and open[1] > high[2]
strategy.entry("long entry 2", strategy.long, 1, limit = ta.lowest(low, 2), when = conditionForBuy2) // enter long by limit if conditionForBuy2 is true
conditionForStopTrading = open < ta.lowest(low, 2)
strategy.cancel_all(conditionForStopTrading) // cancel both limit orders if the conditon conditionForStopTrading is true
पैरामीटर
when
(series bool) वैकल्पिक पैरामीटर↑ सभी ऑर्डर की शर्त रद्द करें↑ यदि शर्त सही है तो सभी सक्रिय ऑर्डर रद्द कर दिए जाएंगे↑ डिफ़ॉल्ट मान है यह अगले आदेश का आदेश है. यदि एक ही आईडी के साथ आदेश पहले से ही लटका हुआ है, तो आदेश को संशोधित किया जा सकता है. यदि कोई आईडी निर्दिष्ट नहीं है, तो एक नया आदेश जारी किया जाएगा. आदेश को रोकने के लिए, आदेश को रणनीति.cancel या रणनीति.cancel_all का उपयोग करना चाहिए. रणनीति.entry के विपरीत, रणनीति.order एक पिरामिड के रूप से प्रभावित नहीं है।
strategy.order(id, direction, qty, limit, stop, oca_name, oca_type, comment, when, alert_message)
उदाहरण
strategy(title = "simple strategy order example")
strategy.order("buy", strategy.long, 1, when = open > high[1]) // buy by market if current open great then previous high
strategy.order("sell", strategy.short, 1, when = open < low[1]) // sell by market if current open less then previous low
पैरामीटर
id
(series string) आवश्यक पैरामीटर↑ ऑर्डर आइडेंटिफ़ायर↑ ऑर्डर को रद्द या संशोधित किया जा सकता है, इसके आइडेंटिफ़ायर का हवाला देकर↑direction
(strategy_direction) एक आवश्यक पैरामीटर. आदेश दिशाः'strategy.long' खरीद के लिए,'strategy.short' बेच के लिए।qty
(series int/float) वैकल्पिक पैरामीटर↑ सौदे के लिए अनुबंध/शेयर संख्या/बंद संख्या/इकाइयों की संख्या↑ पूर्वनिर्धारित मान है limit
(series int/float) वैकल्पिक पैरामीटर↑ आदेश की सीमाएँ↑ यदि निर्दिष्ट है, तो आदेश का प्रकार "सीमा" या "रोक-सीमा" है↑ अन्य आदेश प्रकार "NaN" हैं↑stop
(series int/float) वैकल्पिक पैरामीटर↑ आदेश का स्टॉप-लॉस मूल्य↑ यदि निर्दिष्ट किया गया है, तो आदेश प्रकार "स्टॉप" या "स्टॉप-लिमिट" होगा。 अन्य आदेश प्रकार "NaN" होंगे。oca_name
oca_type
comment
(series string) वैकल्पिक पैरामीटर. आदेश के अन्य विवरण.when
(series bool) वैकल्पिक पैरामीटर↑ ऑर्डर की स्थिति↑ यदि "true" है, तो ऑर्डर रखा गया है↑ यदि "false" है, तो कुछ भी नहीं हुआ ((पहले रखे गए एक ही आईडी वाले ऑर्डर को रद्द नहीं किया गया है)↑ डिफ़ॉल्ट मान "true" है。alert_message
(series string) एक वैकल्पिक पैरामीटर जब आप चेतावनी बॉक्स बनाने के लिए चेतावनी बॉक्स संवाद बॉक्स में चेतावनी संदेश बॉक्स के क्षेत्र में {{strategy.order.alert_message}} का उपयोग करते हैं।bar_index वापस करता है जो एक अनलिमिटेड ट्रेड में प्रवेश करता है.
strategy.opentrades.entry_bar_index(trade_num)
10 K लाइनों का इंतजार करें और समतल करें
उदाहरण
strategy("`strategy.opentrades.entry_bar_index` Example")
barsSinceLastEntry() =>
strategy.opentrades > 0 ? bar_index - strategy.opentrades.entry_bar_index(strategy.opentrades - 1) : na
// Enter a long position if there are no open positions.
if strategy.opentrades == 0
strategy.entry("Long", strategy.long)
// Close the long position after 10 bars.
if barsSinceLastEntry() >= 10
strategy.close("Long")
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.अलविदा
strategy.closedtrades.entry_bar_index
strategy.closedtrades.exit_bar_index
एक अनप्लग किए गए लेनदेन में प्रवेश करने के लिए आईडी वापस करता है।
strategy.opentrades.entry_id(trade_num)
उदाहरण
strategy("`strategy.opentrades.entry_id` Example", overlay = true)
// We enter a long position when 14 period sma crosses over 28 period sma.
// We enter a short position when 14 period sma crosses under 28 period sma.
longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
// Strategy calls to enter a long or short position when the corresponding condition is met.
if longCondition
strategy.entry("Long entry at bar #" + str.tostring(bar_index), strategy.long)
if shortCondition
strategy.entry("Short entry at bar #" + str.tostring(bar_index), strategy.short)
// Display ID of the latest open position.
if barstate.islastconfirmedhistory
runtime.log("Last opened position is " + strategy.opentrades.entry_id(strategy.opentrades - 1))
लौटाता हैएक अनप्लग किए गए लेनदेन में प्रवेश करने के लिए आईडी वापस करता है।
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.नोट्सयदि trade_num सीमा में नहीं है, तो यह फ़ंक्शन na:0 को strategy.opentrades-1 पर लौटाता है।
अलविदा
strategy.opentrades.entry_bar_index
strategy.opentrades.entry_time
एक बार जब आप एक ट्रेडिंग खाता खोलते हैं, तो आप एक ट्रेडिंग खाता खोलते हैं।
strategy.opentrades.entry_price(trade_num)
उदाहरण
strategy("strategy.closedtrades.entry_price Example 1")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Return the entry price for the latest closed trade.
entryPrice = strategy.closedtrades.entry_price(strategy.closedtrades - 1)
plot(entryPrice, "Long entry price")
औसत अनपॉइंट मूल्य की गणना करें
उदाहरण
strategy("strategy.opentrades.entry_price Example 2", pyramiding = 2)
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Calculate average open position price.
avgOpenPositionPrice() =>
sumOpenPositionPrice = 0.0
for tradeNo = 0 to strategy.opentrades - 1
sumOpenPositionPrice += strategy.opentrades.entry_price(tradeNo) * strategy.opentrades.size(tradeNo) / strategy.position_size
result = nz(sumOpenPositionPrice / strategy.opentrades)
plot(avgOpenPositionPrice())
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.अलविदा
strategy.closedtrades.exit_price
UNIX समय को वापस करता है जब एक अनप्लॉइंग ट्रेड में प्रवेश किया जाता है।
strategy.opentrades.entry_time(trade_num)
उदाहरण
strategy("strategy.opentrades.entry_time Example")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Calculates duration in milliseconds since the last position was opened.
timeSinceLastEntry()=>
strategy.opentrades > 0 ? (time - strategy.opentrades.entry_time(strategy.opentrades - 1)) : na
plot(timeSinceLastEntry() / 1000 * 60 * 60 * 24, "Days since last entry")
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.अलविदा
strategy.closedtrades.entry_time
strategy.closedtrades.exit_time
गैर-पॉलिट ट्रेडों के लिए लाभ और हानि लौटाते हैं। हानि को नकारात्मक माना जाता है।
strategy.opentrades.profit(trade_num)
अंतिम ट्रेड के लाभ को वापस करें
उदाहरण
strategy("`strategy.opentrades.profit` Example 1", commission_type = strategy.commission.percent, commission_value = 0.1)
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
plot(strategy.opentrades.profit(strategy.opentrades - 1), "Profit of the latest open trade")
सभी अनप्लग किए गए लेनदेन पर लाभ की गणना करें
उदाहरण
strategy("`strategy.opentrades.profit` Example 2", pyramiding = 5)
// Strategy calls to enter 5 long positions every 2 bars.
if bar_index % 2 == 0
strategy.entry("Long", strategy.long, qty = 5)
// Calculate open profit or loss for the open positions.
tradeOpenPL() =>
sumProfit = 0.0
for tradeNo = 0 to strategy.opentrades - 1
sumProfit += strategy.opentrades.profit(tradeNo)
result = sumProfit
plot(tradeOpenPL(), "Profit of all open trades")
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.अलविदा
strategy.closedtrades.profit
strategy.openprofit
strategy.netprofit
strategy.grossprofit
अनप्लॉइंग ट्रेडों में ट्रेडिंग दिशा और अनुबंधों की संख्या लौटाता है. यदि यह मान > 0 है, तो बाजार की स्थिति बहुआयामी है. यदि यह मान < 0 है, तो बाजार की स्थिति खाली है.
strategy.opentrades.size(trade_num)
उदाहरण
strategy("`strategy.opentrades.size` Example 1")
// We calculate the max amt of shares we can buy.
amtShares = math.floor(strategy.equity / close)
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars
if bar_index % 15 == 0
strategy.entry("Long", strategy.long, qty = amtShares)
if bar_index % 20 == 0
strategy.close("Long")
// Plot the number of contracts in the latest open trade.
plot(strategy.opentrades.size(strategy.opentrades - 1), "Amount of contracts in latest open trade")
औसत मुनाफे के प्रतिशत की गणना करें
उदाहरण
strategy("`strategy.opentrades.size` Example 2")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Calculate profit for all open trades.
profitPct = 0.0
for tradeNo = 0 to strategy.opentrades - 1
entryP = strategy.opentrades.entry_price(tradeNo)
exitP = close
profitPct += (exitP - entryP) / entryP * strategy.opentrades.size(tradeNo) * 100
// Calculate average profit percent for all open trades.
avgProfitPct = nz(profitPct / strategy.opentrades)
पैरामीटर
trade_num
(series int) अनप्लॉइंग लेनदेन का लेनदेन संख्या. पहला लेनदेन संख्या शून्य है.अलविदा
strategy.closedtrades.size
strategy.position_size
strategy.opentrades
strategy.closedtrades
वापस लाइटिंग ट्रेड में प्रवेश करने के लिए bar_index.
strategy.closedtrades.entry_bar_index(trade_num)
उदाहरण
strategy("strategy.closedtrades.entry_bar_index Example")
// Enter long trades on three rising bars; exit on two falling bars.
if ta.rising(close, 3)
strategy.entry("Long", strategy.long)
if ta.falling(close, 2)
strategy.close("Long")
// Function that calculates the average amount of bars in a trade.
avgBarsPerTrade() =>
sumBarsPerTrade = 0
for tradeNo = 0 to strategy.closedtrades - 1
// Loop through all closed trades, starting with the oldest.
sumBarsPerTrade += strategy.closedtrades.exit_bar_index(tradeNo) - strategy.closedtrades.entry_bar_index(tradeNo) + 1
result = nz(sumBarsPerTrade / strategy.closedtrades)
plot(avgBarsPerTrade())
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
strategy.closedtrades.exit_bar_index
strategy.opentrades.entry_bar_index
एक बार जब आप एक ट्रेडिंग खाता खोलते हैं, तो आप अपने ट्रेडों को वापस कर सकते हैं।
strategy.closedtrades.exit_price(trade_num)
उदाहरण
strategy("strategy.closedtrades.exit_price Example 1")
// We are creating a long trade every 5 bars
if bar_index % 5 == 0
strategy.entry("Long", strategy.long)
strategy.close("Long")
// Return the exit price from the latest closed trade.
exitPrice = strategy.closedtrades.exit_price(strategy.closedtrades - 1)
plot(exitPrice, "Long exit price")
औसत लाभ का प्रतिशत गणना करें
उदाहरण
strategy("strategy.closedtrades.exit_price Example 2")
// Strategy calls to create single short and long trades.
if bar_index == last_bar_index - 15
strategy.entry("Long Entry", strategy.long)
else if bar_index == last_bar_index - 10
strategy.close("Long Entry")
strategy.entry("Short", strategy.short)
else if bar_index == last_bar_index - 5
strategy.close("Short")
// Calculate profit for both closed trades.
profitPct = 0.0
for tradeNo = 0 to strategy.closedtrades - 1
entryP = strategy.closedtrades.entry_price(tradeNo)
exitP = strategy.closedtrades.exit_price(tradeNo)
profitPct += (exitP - entryP) / entryP * strategy.closedtrades.size(tradeNo) * 100
// Calculate average profit percent for both closed trades.
avgProfitPct = nz(profitPct / strategy.closedtrades)
plot(avgProfitPct)
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
strategy.closedtrades.entry_price
बार्_इंडेक्स वापस करें।
strategy.closedtrades.exit_bar_index(trade_num)
उदाहरण
strategy("strategy.closedtrades.exit_bar_index Example 1")
// Strategy calls to place a single short trade. We enter the trade at the first bar and exit the trade at 10 bars before the last chart bar.
if bar_index == 0
strategy.entry("Short", strategy.short)
if bar_index == last_bar_index - 10
strategy.close("Short")
// Calculate the amount of bars since the last closed trade.
barsSinceClosed = strategy.closedtrades > 0 ? bar_index - strategy.closedtrades.exit_bar_index(strategy.closedtrades - 1) : na
plot(barsSinceClosed, "Bars since last closed trade")
प्रत्येक लेन-देन के लिए औसत K लाइनों की गणना करें।
उदाहरण
strategy("strategy.closedtrades.exit_bar_index Example 2")
// Enter long trades on three rising bars; exit on two falling bars.
if ta.rising(close, 3)
strategy.entry("Long", strategy.long)
if ta.falling(close, 2)
strategy.close("Long")
// Function that calculates the average amount of bars per trade.
avgBarsPerTrade() =>
sumBarsPerTrade = 0
for tradeNo = 0 to strategy.closedtrades - 1
// Loop through all closed trades, starting with the oldest.
sumBarsPerTrade += strategy.closedtrades.exit_bar_index(tradeNo) - strategy.closedtrades.entry_bar_index(tradeNo) + 1
result = nz(sumBarsPerTrade / strategy.closedtrades)
plot(avgBarsPerTrade())
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
bar_index
एक लॉगिन आईडी लौटाता है जो पहले से ही ट्रेडों को समाप्त कर चुका है।
strategy.closedtrades.entry_id(trade_num)
उदाहरण
strategy("strategy.closedtrades.entry_id Example", overlay = true)
var isOpen = false
var openIndex = -1
// Enter a short position and close at the previous to last bar.
if not barstate.ishistory and not isOpen
strategy.entry("Short at bar #" + str.tostring(bar_index), strategy.short)
isOpen := true
openIndex := bar_index
if openIndex != -1 and bar_index > openIndex + 100
strategy.close_all()
// Display ID of the last entry position.
if barstate.islastconfirmedhistory
runtime.log("Last Entry ID is: " + strategy.closedtrades.entry_id(strategy.closedtrades - 1))
लौटाता हैएक लॉगिन आईडी लौटाता है जो पहले से ही ट्रेडों को समाप्त कर चुका है।
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.नोट्सयदि trade_num सीमा में नहीं है, तो फ़ंक्शन na:0 को strategy.closedtrades-1 पर लौटाता है।
अलविदा
strategy.closedtrades.entry_bar_index
strategy.closedtrades.entry_time
एक बार जब आप एक ट्रेडिंग खाता खोलते हैं, तो आप पहले से ही ट्रेडों के लिए प्रवेश मूल्य वापस कर सकते हैं।
strategy.closedtrades.entry_price(trade_num)
उदाहरण
strategy("strategy.closedtrades.entry_price Example 1")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Return the entry price for the latest entry.
entryPrice = strategy.closedtrades.entry_price(strategy.closedtrades - 1)
plot(entryPrice, "Long entry price")
औसत लाभ का प्रतिशत गणना करें
उदाहरण
strategy("strategy.closedtrades.entry_price Example 2")
// Strategy calls to create single short and long trades
if bar_index == last_bar_index - 15
strategy.entry("Long Entry", strategy.long)
else if bar_index == last_bar_index - 10
strategy.close("Long Entry")
strategy.entry("Short", strategy.short)
else if bar_index == last_bar_index - 5
strategy.close("Short")
// Calculate profit for both closed trades.
profitPct = 0.0
for tradeNo = 0 to strategy.closedtrades - 1
entryP = strategy.closedtrades.entry_price(tradeNo)
exitP = strategy.closedtrades.exit_price(tradeNo)
profitPct += (exitP - entryP) / entryP * strategy.closedtrades.size(tradeNo) * 100
// Calculate average profit percent for both closed trades.
avgProfitPct = nz(profitPct / strategy.closedtrades)
plot(avgProfitPct)
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
strategy.closedtrades.exit_price
strategy.closedtrades.size
strategy.closedtrades
यूनिक्स समय को वापस करें, जब लेनदेन समाप्त हो गया हो।
strategy.closedtrades.entry_time(trade_num)
उदाहरण
strategy("strategy.closedtrades.entry_time Example", overlay = true)
// Enter long trades on three rising bars; exit on two falling bars.
if ta.rising(close, 3)
strategy.entry("Long", strategy.long)
if ta.falling(close, 2)
strategy.close("Long")
// Calculate the average trade duration
avgTradeDuration() =>
sumTradeDuration = 0
for i = 0 to strategy.closedtrades - 1
sumTradeDuration += strategy.closedtrades.exit_time(i) - strategy.closedtrades.entry_time(i)
result = nz(sumTradeDuration / strategy.closedtrades)
// Display average duration converted to seconds and formatted using 2 decimal points
if barstate.islastconfirmedhistory
runtime.log(str.tostring(avgTradeDuration() / 1000, "#.##") + " seconds")
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
strategy.opentrades.entry_time
strategy.closedtrades.exit_time
time
व्यापार के लाभ और हानि को बहाल किया जाता है। हानि नकारात्मक है।
strategy.closedtrades.profit(trade_num)
उदाहरण
strategy("`strategy.closedtrades.profit` Example")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Calculate average gross profit by adding the difference between gross profit and commission.
avgGrossProfit() =>
sumGrossProfit = 0.0
for tradeNo = 0 to strategy.closedtrades - 1
sumGrossProfit += strategy.closedtrades.profit(tradeNo) - strategy.closedtrades.commission(tradeNo)
result = nz(sumGrossProfit / strategy.closedtrades)
plot(avgGrossProfit(), "Average gross profit")
पैरामीटर
trade_num
(series int) लेन-देन का नंबर जिसके लिए लेन-देन समाप्त हो गया है. पहली लेन-देन का नंबर शून्य है.अलविदा
strategy.opentrades.profit
strategy.closedtrades.commission
ट्रेडिंग दिशा और समतल ट्रेडों में अनुबंधों की संख्या लौटाता है. यदि यह मान > 0, तो बाजार की स्थिति बहुआयामी है. यदि यह मान < 0, तो बाजार की स्थिति खाली है.
strategy.closedtrades.size(trade_num)
उदाहरण
strategy("`strategy.closedtrades.size` Example 1")
// We calculate the max amt of shares we can buy.
amtShares = math.floor(strategy.equity / close)
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars
if bar_index % 15 == 0
strategy.entry("Long", strategy.long, qty = amtShares)
if bar_index % 20 == 0
strategy.close("Long")
// Plot the number of contracts traded in the last closed trade.
plot(strategy.closedtrades.size(strategy.closedtrades - 1), "Number of contracts traded")
औसत लाभ प्रतिशत की गणना करें
उदाहरण
strategy("`strategy.closedtrades.size` Example 2")
// Strategy calls to enter long trades every 15 bars and exit long trades every 20 bars.
if bar_index % 15 == 0
strategy.entry("Long", strategy.long)
if bar_index % 20 == 0
strategy.close("Long")
// Calculate profit for both closed trades.
profitPct = 0.0
for tradeNo = 0 to strategy.closedtrades - 1
entryP = strategy.closedtrade
वूहुओयनएक ही समय में कई लेनदेन कैसे चलेंगे?
हल्के बादलकृपया मुझे बताएं, क्या पाइन अधिक लेनदेन कर सकता है? या JS की तरह लेनदेन को पार कर सकता है? धन्यवाद.
लिसा20231अधिक जानकारी के लिए धन्यवाद।
कलात्मकताओह, यह पाइन स्क्रिप्ट प्लेटफॉर्म पर ओकेएक्स के सिमुलेटर का उपयोग कैसे करती है?
कलात्मकतायह ट्रेडिंग व्यू प्लेटफॉर्म की रणनीति को सीधे आविष्कारक प्लेटफॉर्म पर कॉपी करने के बराबर है!
आविष्कारक मात्रा - छोटे सपनेPINE भाषा केवल एकल-प्रजाति रणनीतियों को कर सकती है, बहु-प्रजाति रणनीतियों के लिए सबसे अच्छा है या पायथन, जावास्क्रिप्ट, सी ++ में डिजाइन लिखना।
आविष्कारक मात्रा - छोटे सपनेओह, हाँ, ओकेएक्स विशेष है, उनके एनालॉग वातावरण और वास्तविक डिस्क वातावरण एक ही पते पर हैं, केवल एक अंतर है।
हल्के बादलokx एनालॉग डिस्क का उपयोग नहीं किया जा सकता है ।
आविष्कारक मात्रा - छोटे सपनेइस विविध वास्तुकला समस्या का समाधान नहीं किया जा सकता है, क्योंकि प्रत्येक एक्सचेंज का इंटरफ़ेस अलग है, और इंटरफ़ेस आवृत्ति सीमाएं अलग नहीं हैं, जिससे कई समस्याएं उत्पन्न होती हैं।
आविष्कारक मात्रा - छोटे सपनेठीक है, सुझाव देने के लिए धन्यवाद, और इस आवश्यकता को रिपोर्ट करें।
हल्के बादलमुझे लगता है कि JS के साथ मिश्रण करना बेहतर है, क्योंकि JS विभिन्न प्रकार के लेनदेन के लिए बेहतर अनुकूल है।
ट्रेंडिंग शिकारीक्या आप बाद में कई किस्मों पर विचार करेंगे?
आविष्कारक मात्रा - छोटे सपनेअशिष्टता।
हल्के बादलअच्छा, शुक्रिया ड्रीम डैड।
आविष्कारक मात्रा - छोटे सपनेनमस्ते, अभी के लिए, PINE भाषा नीति केवल एक ही किस्म का काम करती है।
आविष्कारक मात्रा - छोटे सपनेअजनबी, आपके समर्थन के लिए धन्यवाद. दस्तावेज को और भी बेहतर किया जाएगा.
आविष्कारक मात्रा - छोटे सपनेहाँ।
आविष्कारक मात्रा - छोटे सपनेPINE टेम्पलेट क्लासरूम, पैरामीटर पर स्विच एक्सचेंज बेस एड्रेस सेट किया जा सकता है.