COCO研究院

 找回密碼
 註冊
搜索
查看: 11240|回復: 7

[教學] 請教基本的指令的寫法

[複製鏈接]
發表於 18-2-1 21:50 | 顯示全部樓層 |閱讀模式
請教基本的指令的寫法:

--Q1:----------------------
進場 出場都是用1分鐘K線
以下這6種情況 :指令如何寫?

用市價買進多單   
用市價多單平倉

用市價放空
用市價空單平倉

如果IF 庫存原本是多單1口  想要反手變成空單1口  -->只用1行指令 如何寫?

如果IF 庫存原本是空單1口  想要反手變成多單1口  -->只用1行指令 如何寫?


--Q2 -----------------------------------------
(因為 當天期貨在開盤前 不論上漲或下跌時, 必需要先知道, 最近的 支撐壓力所在位置)
我在策略一開始 有設13個變數 如下
vars: P(10), PC(1), avg3(0), avg5(0)

請問:  如何用 of data2 來偵測
過去5個日K線的 當日最高 和 當日最低 共10個數字.
然後將10個數字依小到大排序 , 然後 依序存放到P(1) P(2)...P(10)

加總 過去最近3天 收盤價/3 --->存放到avg3(0)
加總 過去最近5天 收盤價/5 --->存放到avg5(0)
昨天的收盤價 --->存放到PC(1)


--Q3: 進場出場  都是用1分鐘K線 -----------------
如果我另外有設2條平均線  一條是5, 一條是40
input:price(close),fastlen(5),slowlen(40);

IF 目前這1根 5日均線的方向 是向下 -->這IF 指令要如何寫?
IF 目前這1根 5日均線的方向 是向上 -->這IF 指令要如何寫?
IF 前1根 5日均線的方向  現在由向下轉變成向上 -->這 IF 指令如何寫?

(備註:)
( 若 目前這1根 5日均線 >= 前1根 5日均線  -->方向 就是向上 )
( 若 目前這1根 5日均線 <  前1根 5日均線  -->方向 就是向下 )

--Q4:--------------------
雖然有看過幾本MC 的書 ,但是只輸入幾篇簡易策略 沒實際CODING, MC指令生疏的很.
有沒有人 已經建立 好一些常用的指令對照表 ?

~感謝回答的人~

發表於 18-2-2 02:09 | 顯示全部樓層
--Q1:----------------------
進場 出場都是用1分鐘K線
以下這6種情況 :指令如何寫?

用市價買進多單   if condition1 then buy  next bar at market;
建議: 剛開始還是用next bar比較安全。

用市價多單平倉
if condition2 then sell  next bar at market;

用市價放空
if condition2 then sellshort  next bar at market;

用市價空單平倉
if condition1 then buytocover  next bar at market;

如果IF 庫存原本是多單1口  想要反手變成空單1口  -->只用1行指令 如何寫?
if condition2 then sellshort  next bar at market;
跟市價放空一樣....這指令就是不管你多單多少....就是直接便一口空的部位

如果IF 庫存原本是空單1口  想要反手變成多單1口  -->只用1行指令 如何寫?
if condition1 then buytocover  next bar at market;
同上一樣

--Q2 -----------------------------------------
(因為 當天期貨在開盤前 不論上漲或下跌時, 必需要先知道, 最近的 支撐壓力所在位置)
我在策略一開始 有設13個變數 如下
vars: P(10), PC(1), avg3(0), avg5(0)

請問:  如何用 of data2 來偵測
過去5個日K線的 當日最高 和 當日最低 共10個數字.
然後將10個數字依小到大排序 , 然後 依序存放到P(1) P(2)...P(10)

加總 過去最近3天 收盤價/3 --->存放到avg3(0)
加總 過去最近5天 收盤價/5 --->存放到avg5(0)
昨天的收盤價 --->存放到PC(1)
(PASS......)

--Q3: 進場出場  都是用1分鐘K線 -----------------
如果我另外有設2條平均線  一條是5, 一條是40
input:price(close),fastlen(5),slowlen(40);

IF 目前這1根 5日均線的方向 是向下 -->這IF 指令要如何寫?
如果只是比前一根低...
if fastlen<fastlen[1] then .....
如果只是比前N根低...
if fastlen<fastlen[N] then .....


IF 目前這1根 5日均線的方向 是向上 -->這IF 指令要如何寫?
如果只是比前一根高...
if fastlen>fastlen[1] then .....
如果只是比前N根高...
if fastlen>fastlen[N] then .....




IF 前1根 5日均線的方向  現在由向下轉變成向上 -->這 IF 指令如何寫?if

if fastlen[1]<fastlen[2] and fastlen[1]<fastlen then....

-----------------


簡單的可以幫一下....難的等高手回了....
野人獻曝
回復 支持 1 反對 0

使用道具 舉報

 樓主| 發表於 18-2-2 10:31 | 顯示全部樓層
本帖最後由 fancytom 於 18-2-2 11:27 編輯
期貨藝術家 發表於 18-2-2 02:09
--Q1:----------------------
進場 出場都是用1分鐘K線
以下這6種情況 :指令如何寫?

多謝 搶到頭香的網友  熱心回答

--Q3:問題   我沒有表達清楚  
fastlen(5),slowlen(40);
是用來快速定義   就不必整篇去查詢並修改每一行指令   
換言之我漏寫了一行:
快速線平均線 慢速線平均線 應該是: averagefc(C,fastlen)  averagefc(C,slowlen)

我不懂的是:  如何表達   當前的[快速線平均線] 和 前一根[快速線平均線]   用IF 來比較值大小
------------------------------------------

Q3問題 , 我若是自己改成以下這樣   是否正確??

IF 目前這1根 5日均線的方向 是向上 -->這IF 指令要如何寫?
IF averagefc(C,fastlen) >= averagefc(C,fastlen)[1] then .....


IF 目前這1根 5日均線的方向 是向下 -->這IF 指令要如何寫?
IF averagefc(C,fastlen) < averagefc(C,fastlen)[1] then .....


IF 前1根 5日均線的方向  現在由向下轉變成向上 -->這 IF 指令如何寫?
IF averagefc(C,fastlen) >= averagefc(C,fastlen)[1]  AND averagefc(C,fastlen)[1] < averagefc(C,fastlen)[2]   then .....
發表於 18-2-2 20:08 來自手機 | 顯示全部樓層
Arrays:DayHL[10](0); Vats:avg3(0),avg5(0),PC1(0);  利用函數NthMinlist由小到大取得過去5日高低點數列依序存入陣列內DayHL[0]最小,DayHL[9]最大  For counter= 1 to 10 begin     DayHL[counter-1]= NthMinlist(counter,HighD(1),LowD(1),HighD(2),LowD(2),HighD(3),LowD(3),HighD(4),LowD(4),HighD(5),LowD(5)); End;  Avg3=(CloseD(1)+CloseD(2)+CloseD(3))/3 ; {Avg3=Average(Close[1] ,3) of data2}  Avg5=(CloseD(1)+CloseD(2)+CloseD(3)+CloseD(4)+CloseD(5))/5 ; {Avg5=Average(Close[1] ,5) of data2}  PC1=CloseD(1); { PC1=Close[1] of data2}
發表於 18-2-2 20:10 | 顯示全部樓層
Q2

Arrays:DayHL[10](0);
Vats:avg3(0),avg5(0),PC1(0);

利用函數NthMinlist由小到大取得過去5日高低點數列依序存入陣列內DayHL[0]最小,DayHL[9]最大

For counter= 1 to 10 begin
    DayHL[counter-1]= NthMinlist(counter,HighD(1),LowD(1),HighD(2),LowD(2),HighD(3),LowD(3),HighD(4),LowD(4),HighD(5),LowD(5));
End;

Avg3=(CloseD(1)+CloseD(2)+CloseD(3))/3 ;
{Avg3=Average(Close[1] ,3) of data2}

Avg5=(CloseD(1)+CloseD(2)+CloseD(3)+CloseD(4)+CloseD(5))/5 ;
{Avg5=Average(Close[1] ,5) of data2}

PC1=CloseD(1);
{ PC1=Close[1] of data2}



 樓主| 發表於 18-2-5 23:55 | 顯示全部樓層
easytrader788 發表於 18-2-2 20:10
Q2

Arrays:DayHL[10](0);

多謝 頑皮豹大大的教學
(加入好友 有好幾個月 ,很少串門子)
這2天假日 忙著設計VB 和跑數據  ,忘記先致謝  實在有點失禮

其在我提問之前  早就預料到論壇中 會熱心回答MC 的人不多
有實力的更少  估8成你會答我帖
有時想問的題目很多 ...但想到1小時才能打1次  ...心都冷了  算了也省了打字



發表於 18-10-24 19:23 | 顯示全部樓層
王慶津  VCD當沖課程  
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-24 23:27

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |