
सिग्नल-टू-शोर मूविंग एवरेज ट्रेडिंग रणनीति
इस रणनीति में एक निश्चित अवधि के भीतर सिग्नल और शोर अनुपात की गणना की जाती है, और फिर एक समान लेनदेन सिग्नल के साथ संयोजन किया जाता है, ताकि एक मात्रात्मक लेनदेन किया जा सके। इसकी मूल सोच हैः
इस रणनीति के मुख्य फायदे हैंः
इस रणनीति के कुछ जोखिम भी हैं:
जोखिम समाधान:
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
इस रणनीति के माध्यम से संकेत और शोर अनुपात बाजार में उतार-चढ़ाव के जोखिम का आकलन, और व्यापार संकेत उत्पन्न करने के लिए एक समान रेखा का उपयोग करें, मात्रात्मक व्यापार को लागू. एक एकल तकनीकी सूचक की तुलना में, इस रणनीति को एकीकृत संकेत और शोर अनुपात और SMA के लिए अपने फायदे, जबकि जोखिम को नियंत्रित करने के स्थिरता में सुधार. इस रणनीति के पैरामीटर अनुकूलन और मशीन सीखने आदि के माध्यम से सुधार के लिए बहुत जगह है, एक विश्वसनीय, प्रभावी मात्रात्मक व्यापार रणनीति है.
/*backtest
start: 2023-12-25 00:00:00
end: 2023-12-29 10:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © HPotter 05/01/2021
// The signal-to-noise (S/N) ratio.
// And Simple Moving Average.
// Thank you for idea BlockchainYahoo
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
SignalToNoise(length) =>
StN = 0.0
for i = 1 to length-1
StN := StN + (1/close[i])/length
StN := -10*log(StN)
strategy(title="Backtest Signal To Noise ", shorttitle="StoN", overlay=false)
length = input(title="Days", type=input.integer, defval=21, minval=2)
Smooth = input(title="Smooth", type=input.integer, defval=7, minval=2)
reverse = input(false, title="Trade reverse")
StN = SignalToNoise(length)
SMAStN = sma(StN, Smooth)
pos = iff(SMAStN[1] > StN[1] , -1,
iff(SMAStN[1] < StN[1], 1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )
plot(StN, title='StN' )
plot(SMAStN, title='Smooth', color=#00ff00)