Strategi Momentum Alpha menilai sama ada aset asas mempunyai momentum positif dengan mengira nisbah Sharpe dan nilai alpha. Ia pergi lama apabila kedua-dua nisbah Sharpe dan alpha positif, dan meratakan kedudukan apabila kedua-dua penunjuk menjadi negatif.
Indikator utama strategi ini adalah nisbah Sharpe dan alpha. Nisbah Sharpe mencerminkan pulangan aset yang disesuaikan risiko, sementara alpha mencerminkan pulangan lebihannya berbanding penanda aras pasaran. Apabila kedua-duanya positif, ia menunjukkan aset itu mempunyai pulangan yang disesuaikan risiko yang tinggi dan melebihi penanda aras pasaran. Oleh itu, kedudukan panjang diambil. Apabila kedua-duanya menjadi negatif, ia bermakna momentum hilang dan kedudukan rata.
Secara khusus, strategi ini pertama kali mengira nisbah Sharpe selama 180 hari yang lalu. Nisbah Sharpe dikira sebagai: (pengembalian harian purata
Pada masa yang sama, alpha selama 180 hari yang lalu dikira. Alpha dikira melalui model pasaran: Alpha = pulangan aset sebenar
Oleh itu, apabila kedua-dua nisbah Sharpe dan alpha positif, kedudukan panjang diambil.
Kelebihan terbesar strategi ini adalah bahawa dengan menilai momentum, ia dapat menangkap peluang pertumbuhan pasaran yang lebih luas dan beberapa saham individu dalam tempoh tertentu, sambil mengawal risiko untuk mengelakkan kejatuhan pasaran yang berpanjangan.
Pengiraan nisbah Sharpe mencerminkan keadaan momentum baru-baru ini dan dapat menangkap trend kenaikan beberapa pasaran dan saham. Pengiraan alpha mencerminkan kelebihan pulangan berbanding penanda aras dan menapis dasar yang lebih lemah.
Dengan mempertimbangkan kedua-dua penunjuk secara komprehensif di sepanjang jangka masa yang berbeza, momentum positif dapat ditentukan dengan lebih tepat.
Apabila momentum hilang, stop loss tepat pada masanya mengelakkan kerugian besar.
Berbanding dengan penunjuk momentum tunggal, strategi ini lebih stabil sementara juga cukup fleksibel untuk digunakan pada kedua-dua saham dan indeks.
Walaupun terdapat kelebihan, strategi ini masih mempunyai risiko berikut:
Indikator momentum boleh menarik balik. Apabila pasaran bertukar, stok momentum boleh jatuh dengan cepat. Ini boleh menyebabkan kerugian besar. Parameter boleh diselaraskan atau digabungkan dengan indikator lain.
Rasio Alpha dan Sharpe mempunyai kelewatan masa. Apabila pasaran bergerak dengan cepat, nilai penunjuk mungkin kelewatan dan gagal mencerminkan trend terkini. Tempoh pengiraan boleh diperpendek.
Tidak ada kawalan saiz kedudukan, yang membawa kepada risiko tertumpu.
Data backtest mungkin tidak mencukupi dan prestasi langsung tidak pasti. Lebih banyak jangka masa dan ujian backtest instrumen harus dilakukan. Jendela pengoptimuman parameter harus diperpendek untuk mengelakkan pemasangan berlebihan.
Strategi ini boleh dioptimumkan dalam aspek berikut:
Tambahkan mekanisme stop loss. Tetapkan titik stop loss apabila harga jatuh tajam dalam sehari untuk mengelakkan kerugian besar.
Tambah pengurusan saiz kedudukan. Kawal modal setiap perdagangan berdasarkan turun naik pasaran untuk mengehadkan kerugian setiap perdagangan.
Mengoptimumkan parameter. Uji jangka masa yang berbeza untuk menyesuaikan ciri-ciri asas dan keadaan pasaran yang berbeza. Kombinasi parameter yang berbeza juga boleh dinilai.
Tambah syarat penapisan. Tetapkan penapisan seperti jumlah dagangan atau turun naik untuk mengelakkan terjebak dalam situasi pelbagai atau kecairan yang rendah.
Gabungkan dengan strategi lain. Pertimbangkan untuk menggabungkan dengan strategi lain yang mengikuti trend. Ini boleh meningkatkan kestabilan dan mempelbagaikan risiko dari satu strategi.
Strategi Momentum Alpha secara dinamik menangkap peluang momentum dengan menilai kedua-dua pulangan aset yang disesuaikan dengan risiko dan prestasi pasaran relatif. Berbanding dengan penunjuk momentum tunggal, ia mempunyai kelebihan penilaian yang lebih tepat, penerapan yang lebih luas, dan ketahanan risiko yang lebih tinggi. Tetapi strategi ini masih membawa risiko penarikan dan kelewatan. Ia memerlukan pengoptimuman berterusan dan kombinasi dengan strategi lain sebelum keuntungan hidup yang stabil dapat dicapai.
/*backtest start: 2023-11-15 00:00:00 end: 2023-11-16 04:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Alpha strategy - simple version", overlay=true) //by NIKLAUS //USE ON DAILY TIMEFRAME TO DETECT MOMO STOCKS & ETFs AND TRADE THEM //USE ON 5MIN CHART FOR INTRADAY USAGE //examples to try this on: GER30, NAS100, JPN225, AAPL, IBB, TSLA, FB, etc. //This Strategy goes long when Sharpe Ratio is > 1 and Alpha against the S&P500 is generated. It exits when conditions break away. //https://en.wikipedia.org/wiki/Alpha_(finance) //------------------------------------------------------------------------------------------------------------------------------------ //Alpha is a measure of the active return on an investment, the performance of that investment compared to a suitable market index. //An alpha of 1% means the investment's return on investment over a selected period of time was 1% better than the market during that same period, //an alpha of -1 means the investment underperformed the market. //Alpha is one of the five key measures in modern portfolio theory: alpha, beta, standard deviation, R-squared and the Sharpe ratio. //simplified sharpe src = ohlc4, len = input(180, title = "Sharpe/Alpha/Beta Period") pc = ((src - src[len])/src) std = stdev(src,len) stdaspercent = std/src sharpe = pc/stdaspercent //alpha sym = "BTC_USDT:swap", res=timeframe.period, src2 = close ovr = request.security(sym, res, src2) ret = ((close - close[1])/close) retb = ((ovr - ovr[1])/ovr) secd = stdev(ret, len), mktd = stdev(retb, len) Beta = correlation(ret, retb, len) * secd / mktd ret2 = ((close - close[len])/close) retb2 = ((ovr - ovr[len])/ovr) alpha = ret2 - retb2*Beta //plot(Beta, color=green, style=area, transp=40) smatrig = input(title="Sensitivity", defval=2, minval=1, maxval=3) bgcolor (sma(sharpe,len/smatrig) > 1 and sma(alpha,len/smatrig) > 0 ? green : red, transp=70) if (close > open) and (sma(sharpe,len/smatrig) > 1) and (sma(alpha,len/smatrig) > 0) strategy.entry("Alpha", strategy.long) strategy.close("Alpha", when = (sma(sharpe,len/smatrig) < 1) or (sma(alpha,len/smatrig) < 0))