シンプルな株式自動売買のスクリプト例①多重平均線の位置によっての売買
こんにちは、こうです。
今回はyoutubeで紹介した、pine scriptを用いた自動売買のスクリプト例を紹介します。
これをコピペすることで皆さんのスマホでも自動売買ができてしまいます。
その方法は別の記事で紹介予定なので、待っていてください!
では早速ですが、もうコードを貼ります
// 多重平均がゴールデンポジションにいるときに買い、それが崩れたときに売る戦略
//0バージョンの設定
//@version=5
strategy("example")
//1移動平均の定義
sma25=ta.sma(close,25)
sma50=ta.sma(close,50)
sma75=ta.sma(close,75)
sma100=ta.sma(close,100)
//2購入条件の定義
bool goldenposition = sma25 > sma50 and sma50 > sma75 and sma75 > sma100
//3バックテストの期間を判定
UseFrom = input.time(defval = timestamp(dateString = "2016-01-01T00:00:00"), group = "バックテストの期間", title = "From")
UseTo = input.time(defval = timestamp(dateString = "2024-10-31T00:00:00"), group = "バックテストの期間", title = "To")
isBetween = UseFrom <= time and time < UseTo
//4購入命令
if goldenposition and isBetween
strategy.entry("long",strategy.long)
//5売却条件の定義
endtiming = strategy.position_size != 0 and goldenposition == false
//6売却命令
if endtiming and isBetween
strategy.close("long")
まず、0のバージョン設定ですが、最新の6より一つ古い5です。
次に、1の移動平均の定義ですが、ここでは、4つの移動平均の変数を定義しています。これからいちいちta.sma(close,100)と入力するのはだるいので、sma100として、入力を楽にしています。
次に、2の購入条件の定義ですが、goldenpositionは購入条件に当たるものです。この変数を定義して後々の作業を楽にしています。
次に、3の期間設定ですが、これは詳しく説明すると長くなりますが、要は、「isBetweenに入っている=期間内である」という式を立て、売買のバックテストを行う期間を指定しています。
4の購入命令はその名の通りで、もし、goldenpositionとisBetweenが当てはまっていたら、買ってくださいというものです。
5では売却条件を定義しています。2のようなものですね。
6は先ほど購入した株を売ってくださいという命令です。
ざっとここまで説明してきましたが、よくわからない人はコピペでOK!
自分のパソコンでtrading viewを開いてpineエディタを開いて、これを貼って動かしてみてください!
また、これからpine scriptを自分で組んでみたい方に向けてpine scriptの使い方や意味などを解説した記事も出そうと思っているので、そちらもよろしくお願いします。