質問掲示板
岡三RSS
集いの広場

アップロードされたファイルおよび投稿内容についての注意事項 別窓

複数の単語で検索する方法 別窓

【国内株式、先物・オプション】岡三RSS質問箱

岡三オンライン証券(代理記入)

当社に寄せられた質問「保有情報取得関数OPPOS1TI0Nに表示される評価損益額を使ったOCO注文について」

225先物です。複数の建玉の利益確定あるいは損切り(OCO)を行うため,
保有情報取得関数OPPOS1TI0Nで表示される評価損益額を使い、シートモジュール上に下記コードを書きました。
しかし、コンパイルエラー(プロシージャの宣言が、イベント又はプロシージャの定義と一致しません)と表示されました。修正すべき箇所をご教授いただければ、有難く存じます。宣しくお願い致します。

(シートモジュール)
Private Sub Worksheet_Change
Dim i as integer
For i =3 to 25
if Cells(i,9)<=-5000 then “評価損益額はCells(3.9)から記入
if cells(i, 1)=“買" then “建玉の売買の別は,Cells(3,1)から記入
Call 決済売
Else
Call 決済買
End if
End if

if Cells(i,9)>=5000 then
if cells(i, 1)=“買" then
Call 決済売
Else
Call 決済買
End if
End if

Next
End Sub

*損切り、利益確定ともそれぞれ-5000円 、5000円としています。
**決済売,買とも標準モジュールに於て、
sub 決済売 ()
kessaiuri=fneworder(成行・決裁売)
End Sub
をそれぞれ作成しています。
***3~25行まで保有の注文までの処理としています。

以上

2017年05月25日

おおた

小笠原聖史 様
少し付け加えさしてください。繰りかえますが、損切り価格に来ると、エラー"決済建玉がありません"がでてきます。I列の決済注文中数量は. 0となっています。普通、0には、なっていないのではないのでしょうか?

おおた

2017年05月31日

ログインしてコメントを投稿する

小笠原聖史

おおた様
はい、おおた様おっしゃるとおり、1枚からなる建玉の決済注文が1枚発注されると、I列の決済注文中数量には、1枚と表示されると認識しています。
一つお教えください。損切価格に来るとエラー”決済建玉がありません”が出てくるとのことですが、建玉があって、I列の決済注文中数量が0の状態で、決済建玉がありません、が出るということでしょうか。

2017年05月31日

ログインしてコメントを投稿する

おおた

小笠原聖史 様
"損切価格に来るとエラー”決済建玉がありません”が出てくるとのことですが、建玉があって、I列の決済注文中数量が0の状態で、決済建玉がありません、が出るということでしょうか。"
はい、そうです。
お世話をおかけします。
おおた

2017年05月31日

ログインしてコメントを投稿する

小笠原聖史

おおた様
いま、いただいたコードを標準モジュールに張り付けて、シート名を”決済”に変更し、以下のとおり、
①新規売り発注(手動で)
②Sub 保有情報取得関数OPPOS1TI0Nに表示される評価損益額を使ったOCO注文()、を実行
③評価損益が1000円→決済判定→決済買い発注のポップアップ→「はい」を押下→発注→約定
のプロセスがうまく動作いたしました。

おおた様のご指摘の”決済建玉がありません”というメッセージはでなかったので、どういうわけなのでしょうか、、、なんとかおおた様の手元でうまく動作していただきたいのですが、、
今回、私はミニ一枚で試したのですが、おおた様は複数の建玉で試していらっしゃいますか?それだと、決済済みの建玉をRSSがエクセル上から消去する前に決済判定が走って、もう決済済みの建玉に対して発注をかけにいっているなら、おっしゃるメッセージが出る可能性があるかもしれないと思いました。その場合には、10秒間隔でのループ間隔の設定を、20秒などに変更するといいかもしれません。

約定日 受渡日 銘柄 市場 取引 商品 売買 単価 数量 手数料 受渡金額 決済損益
2017/5/31 23:41 2017/6/2 N225ミニ 1706 大阪 決済 日経225ミニ 先物 買 19645 1 43 414 414
2017/5/31 23:39 2017/6/2 N225ミニ 1706 大阪 新規 日経225ミニ 先物 売 19650 1 43 0

2017年05月31日

ログインしてコメントを投稿する

おおた

小笠原聖史様
今回は,一枚の注文を手動で入れました。J3の建玉番号の表示は、-で表示され認識されていません。この理由ですね。"決済建玉がありません"というエラーがでる理由は。貴殿のパソコンでは,当然認識されていたのですね? これは,私自身のパソコン環境の問題ですね?[今週日曜日からは、自宅を離れモバイルパソコンで行っています。)
おおた

2017年06月01日

ログインしてコメントを投稿する

小笠原聖史

おおた様
おはようございます。
理由は、おっしゃる点”建玉番号の-表示”で間違いないと思います。
あとは、なぜ、”-”になるかですが、ご自宅の環境で建玉番号が表示されると、モバイルパソコンであることが理由だ、とわかりますね。今回、エクセルシートに表示させているfoppositionの項目は以下の通りですが、モバイルパソコンで-以外の項目は正常に表示されているのでしょうか?

FOPPOSITION("銘柄コード",A3,"0")
FOPPOSITION("銘柄名",B3,"0")
FOPPOSITION("市場",C3,"0")
FOPPOSITION("商品種別",D3,"0")
FOPPOSITION("売買",E3,"0")
FOPPOSITION("建玉日",F3,"0")
FOPPOSITION("建玉単価",G3,"0")
FOPPOSITION("数量",H3,"0")
FOPPOSITION("決済注文中数量",I3,"0")
FOPPOSITION("建玉番号",J3,"0")
FOPPOSITION("建玉枝番号",K3,"0")
FOPPOSITION("評価損益額",L3,"0")


2017年06月01日

ログインしてコメントを投稿する

おおた

小笠原聖史様
早速にご回答有難うございました。
ご指示のFOPPOS1T10Nで表示されるかどうか、各項目をチェックしました。買,売それぞれ1枚を手動で約定させました。売は、買の9秒後に入れました。
FOPPOS1T10Nは,注文毎で行っています。
1.評価損益額についての表示は,正常に作動せず。
(1)買(9:46:15約定)は、0のままの表示で変化しません。
(2)売(9:46:24約定)は、***END***が表示され,数値が表示されていません。
(3)買は、3行目に,売は,4行目に表示されています。この順で正常ですか?

2.評価損益額以外では.ーが表示され,数値等が表示されていません。。
建玉番号,建玉技番号,建玉日,建玉日時

以上ですが、正常でない表示が、多くでています。小笠原さんのPCでは、問題はありませんか?
おおた

2017年06月01日

ログインしてコメントを投稿する

小笠原聖史

fpositionの表示.xlsx (376.4KB)

おおた様
ご確認ありがとうございます。
VBAの記述の問題ではなく、エクセルシートのfpositionのアウトプットの問題ですね。
手元のPCでは、添付ファイルのように表示されおり、これが正常であると認識しております。
おおた様でエクセルのセルに設定されたRSSの関数をコピーしてこのスレッドに上げていただくことは可能でしょうか?

2017年06月01日

ログインしてコメントを投稿する

おおた

小笠原聖史様
ご返事有り難うございます。
1.すいません。色々やってみましたが、エクセルの添付の方法が分りません。
2,とりあえず、岡三オンラインの方にFOPPOS1T10Nの表示について,質問を出しています。
3.明日の夜、自宅にもどりますので,自宅のパソコンで行ってみます。
4、複数建玉の場合,間隔は20秒等とっておく必要が、ありそうですね。もしできるなら、損切り,利益確定の条件があえば,すぐに決済を考えています。EXELで=If( , , )*を使えば、即、決済ができると思います。この点もどう考えられますか?
* =if( ishumber(L3) ,if (or(L3〉=5000,L3<=ー5000)、if(A3=買,fneworder(決済売),fneworder(決済買) ),“待ち" ,““)

おおた

2017年06月01日

ログインしてコメントを投稿する

小笠原聖史

おおた様

1と2ですが、エクセル添付でなくとも、以下のような感じで張り付けていただければ拝見できます。

FOPPOSITION("銘柄コード",A3,"0")
FOPPOSITION("銘柄名",B3,"0")
FOPPOSITION("市場",C3,"0")
FOPPOSITION("商品種別",D3,"0")
FOPPOSITION("売買",E3,"0")
FOPPOSITION("建玉日",F3,"0")
FOPPOSITION("建玉単価",G3,"0")
FOPPOSITION("数量",H3,"0")
FOPPOSITION("決済注文中数量",I3,"0")
FOPPOSITION("建玉番号",J3,"0")
FOPPOSITION("建玉枝番号",K3,"0")
FOPPOSITION("評価損益額",L3,"0")

4はおっしゃるとおりですね。VBAを使わなくても、関数でも大丈夫だと思います。

2017年06月01日

ログインしてコメントを投稿する

すべての投稿を表示する

to_top
to_top

アップロードされたファイルにはウイルスチェックを行っておりますが、未知のウイルス等に感染されている場合がありますので、アップロードされたファイルのご利用はご注意ください。
また、取引パスワード等の重要な情報を投稿内容に含めないようご注意ください。
なお、アップロードされたファイルの利用や投稿内容によって、投稿者自身や他の利用者が被った損害に対して当社は一切責任を負いません。

また、セキュリティの関係上、一部コマンド等を含む内容を送信するとエラー画面が表示され、投稿ができない場合がございます。何卒ご了承ください。

岡三RSS集いの広場では、複数の単語による検索が可能です。

例)関数 and サンプル
→AND検索となり、「関数」および「サンプル」を含む検索結果が表示されます。

例)関数 or サンプル
→OR検索となり、「関数」または「サンプル」を含む検索結果が表示されます。

例)関数 not サンプル
→NOT検索となり、「関数」を含むが「サンプル」は含まない検索結果が表示されます。

※and、or、notの前後は半角スペースで区切ってください。
※単語の間を半角スペースで区切るだけだと、OR検索となります。