(懸賞1000G)請問MC 能自動畫出趨勢線嗎?
爬文好久,發現幾乎都是要先自己畫出趨勢線,然後開發穿越後的行為
若只是單純地想畫出波段高點連線
像是這樣的趨勢線
需要能自動畫出趨勢線 & 突破產生警示
有辦法的解答的大大
立刻奉上1000G.......
感激不盡~~~{:4_209:}
小弟已經畫出雛型囉
只是還有BUG待解.....
解決後會放上完整程式碼引水思源
感謝各位指點 !
敢問"1000G"是"一公斤"嗎?
{:4_193:}{:4_193:}{:4_193:} ㄜ......是CoCo 幣 1000的意思...
老大別鬧了~~~ 我覺得我好像找到方法了....
有解的大大可能手腳要快,
或是待我寫出來後在傳上來愈大家分享 版大要先說明:
(1)要畫甚麼線?
(2)如何叫突破?
會寫的大大,自動會出現吧!
因為會寫的大大都不好意思問 ㄋ ㄟ !!! 本帖最後由 blj0511 於 16-2-6 02:44 編輯
若你有趨勢線的明確定義,可以寫出來,但問題是,畫趨勢線是一種很主觀的動作,您PO的例子是很完美的狀況下,只看這段當然很簡單,但遇到震盪,趨勢線跟廢物一樣
趨勢線你看歷史會覺得畫趨勢線很簡單啊,但問題是你要取哪跟到哪跟的高點? 一整段K棒給你很簡單畫,但K棒一根一根出來的時候,就完全不一樣了,所以有很強的主觀意識
我看過一段知名老師的影片,老師說,看22周K線,當突破這條下降趨勢線時就買進,結果一個學員問為何趨勢線是這樣畫時,老師就答不太出來,只說就是這樣畫,含糊其辭
人為操作還能用眼睛去過濾一些突出來的引線,但程式就是死的,一個高一點的上引線就會被視為突破,實際上沒啥用處,即使您寫出來了,寫進出場訊號時,您會覺得怎樣寫都績效不佳
比較有類似效果的可以參考mc內建的,_ChoasFractal指標,主要用到swingHigh swingLow函式,可以畫出大概的上下區間做突破處理,但也沒那麼簡單寫就是了
本帖最後由 roder 於 16-2-6 10:55 編輯
MC內建TrendLine Automatic的指標可以達成你要的自動化趨勢線,然後再自己設定該指標的警示(跳出提示或是發出聲音都可以)
以上都是MC內建做得到的,或是要自己打開TrendLine Automatic的指標研究再修改
PS:這樣有達到1000G的要求嗎?哈哈....
只要三根K棒就可以產生波峰或波谷,
初步來看,只要幾個條件滿足就可畫出一班的趨勢線
( ps: 均線 和 趨勢線請別搞混 , 這裡提到的是趨勢線哦)
目前構想是,將所有K棒時間、編號記錄下來
1. 持續創高的情況,
2. 若中間K棒高點大於前後K棒( N高 > N-1高 , N高 > N+1高 )
則儲存在另一個struct
3.連接struct 內最後的兩個高點
lingin1204 發表於 16-2-7 15:37
只要三根K棒就可以產生波峰或波谷,
初步來看,只要幾個條件滿足就可畫出一班的趨勢線
( ps: 均線 和 趨 ...
1. if h<h and h>h then value1=h;
.....value2
若用這種方式, 趨勢線會畫一大堆.......畫出很多不會是你想要的線.
也許放大時區(日,週)會比較好一些....
2.持續創高時, 應該畫上升趨勢線, 反而是要記錄 L並畫成連接點的趨勢線, 而非將H連接畫線哦....
個人淺見
趨勢的認定先要確定吧
幾分鐘的走法會成為趨勢?還是幾十分鐘的走法才成為趨勢?
如果是一般的紙上作業 那麼簡單的做法就是有高就畫高 有低就畫低
或是用sin的角度去畫(向上) 或是cos的角度(向下)
小學老師有教 三點決定一平面 兩點決定一直線
只是先要確定這兩個點 是怎麼算出來的 或是用怎樣的參數定義出來
附記 幾分鐘成為一個趨勢?如果只是很單純的找趨勢突破 那..布林通道不也是可以?
如有錯誤的想法 敬請指教 平靜的海 發表於 16-2-12 13:53
個人淺見
趨勢的認定先要確定吧
幾分鐘的走法會成為趨勢?還是幾十分鐘的走法才成為趨勢?
就程式交易來說布林通道比趨勢線好用許多
本帖最後由 lingin1204 於 16-3-4 12:11 編輯
飲水思源,分享程式原始碼,請慢用
ps: 趨勢線定義因人而異,小弟的程式碼目前會產生最新的波段高點連線,並刪除舊的或已經突破的
-----------------------------------------------------------------------------------------------------
Input:leftStrength(3),rightStrength(3);
array:arrayH(0),arrayL(0),arrayDraw(0);
var:var0(0),var1(0),var2(0),var3(0),var4(0),highPrice(0),lowPrice(0),highBarNum(0)
,lowBarNum(0),arrayHNum(0),arrayLNum(0),highPrice2(0),tl_num(0),t1(0),t2(0),t3(0),t4(0),t5(0),t6(0);
cleardebug;
t1=Pivot(High,leftStrength+rightStrength,leftStrength,rightStrength,1,1,highPrice,highBarNum);
if highPrice<> -1 and highBarNum <> -1 then begin
arrayHNum = arrayHNum +1;
arrayH = highPrice;
arrayH = IntPortion(Date);
arrayH = IntPortion(time_s);
arrayH = 0; //for trend line number
end;
t2= Pivot(Low,leftStrength+rightStrength,leftStrength,rightStrength,1,-1,lowPrice,lowBarNum);
if lowPrice<> -1 and lowBarNum <> -1 then begin
arrayLNum +=1;
arrayL = lowPrice;
arrayL = IntPortion(Date);
arrayL = IntPortion(time_s);
arrayL = 0;
end;
if t1>0 then begin // Pivot success
tl_delete(arrayH);
end;
for var0 = arrayHNum downto 1 begin
if arrayH < arrayH and arrayH<>0 and t1>0 then begin
arrayH = tl_new_self_s(arrayH,arrayH,arrayH
,arrayH,arrayH,arrayH);
tl_setextright(arrayH,true);
var4 =tl_setalert(arrayH,2);
if var4 >0 then begin
messagelog(" Alert trigger ");
PlaySound("C:\Windows\Media\notify.wav");
end;
arrayDraw=arrayH;
arrayDraw=arrayH;
arrayDraw=arrayH;
arrayDraw=arrayH;
arrayDraw=arrayH;
arrayDraw=arrayH;
var0 = 0;
end;
end;
if arrayHNum > 1 then begin
messagelog("arrayHNum:",arrayHNum);
messagelog("arrayH: ",arrayH);
messagelog("arrayH: ",arrayH);
end;
lingin1204 發表於 16-3-4 11:36
飲水思源,分享程式原始碼,請慢用
ps: 趨勢線定義因人而異,小弟的程式碼目前會產生最新的波段高點連線, ...
請問一下我直接使用你原本的程式碼
會出現錯誤 陣列界限 索引值錯誤 301
請問這個意思是什麼?
willy84222 發表於 16-3-17 20:46
請問一下我直接使用你原本的程式碼
會出現錯誤 陣列界限 索引值錯誤 301
請問這個意思是什麼?
我編譯是成功的, 用指標編譯
請問你是不是選錯了
另外, 謝謝原PO 分享{:4_153:}
頁:
[1]
2