買賣訊號

  •   343 
  • 最後發表   Mr 洪  2025 十月 30
Mr 洪 發文於   2025/10/20

請教

問題1.有(前5日)(最高價+最低價)/2的語法嗎

問題2.語法可以寫出BIAS指標嗎?

問題3.如果語法可以寫出BIAS指標,請問如何把(前5日)(最高價+最低價)/2,還要加BIAS指標,變成買賣訊號(有向上向下箭頭)呈現在技術分析上

 

 

補充: 選股中心的匯出策略已寄到客服信箱了

排序方式: 標準 | 最新
虎科大許教授 發文於   2025/10/30

if hasPlot=false and c[1]<value1[1] and c>value1 and value2>value2[1] or (hasPlot=false and value3<10

  • 按讚來自於
  • 2528899
Mr 洪 發文於   2025/10/30

謝謝教授

再請教 我再增加RSI 4 在買進和賣出條件(或者我寫入or)買進RSI4<10賣出RSI4 >90編譯不成功請教如何加入 謝謝教授

var: intrabarpersist hasPlot(false);

value1=(h[5]+L[5])/2;

value2=Bias(14); 

value3 = RSI(C,4);  

value4 = RSI(C,12);

variable: rsv(0), k(0), _d(0);

stochastic(9, 3, 3, rsv, k, _d);

 

if hasPlot=false and c[1]<value1[1] and c>value1 and value2>value2[1]( 或者or)  then

  

  setposition(1,market);

      Alert(c,"買進");

      hasPlot=true;

 

if hasPlot=true and value4>value4[1]  then

   begin

     setposition(0,market);

     Alert(c,"賣出");

      hasPlot=false;

   end;

 

虎科大許教授 發文於   2025/10/28

Alert(c,"買進");的上一行加入setposition(1,market);

Alert(c,"賣出");的上一行加入setposition(0,market);

 

  • 按讚來自於
  • 2528899
Mr 洪 發文於   2025/10/28

已修正編譯成功 

var: intrabarpersist hasPlot(false);

 

value1=(highest(h[1],5)+lowest(L[1],5))/2;

 

value2=Bias(12);

 

if hasPlot=false and c[1]<value1[1] and c>value1 and value2>value2[1] then

 

   begin

 

      Alert(c,"買進");

 

      hasPlot=true;

 

   end;

 

if hasPlot=true and c[1]>value1[1] and c<value1 then

 

   begin

 

      Alert(c,"賣出");

 

      hasPlot=false;

 

   end;

請教可以加入實際執行買賣的交易語法嗎?  想放在自動交易中心以自動買進賣出

虎科大許教授 發文於   2025/10/23

value1=(h[1]+L[1])/2;

  • 按讚來自於
  • 2528899
Mr 洪 發文於   2025/10/23

請教 

這樣修改就編譯成功

value1=(highest(h[1],0)+lowest(L[1],0))/2

 這樣修改正確?

謝謝教授   晚安

Mr 洪 發文於   2025/10/23

謝謝教授  

已修正編譯成功 

var: intrabarpersist hasPlot(false);

 

value1=(highest(h[1],5)+lowest(L[1],5))/2;

 

value2=Bias(12);

 

if hasPlot=false and c[1]<value1[1] and c>value1 and value2>value2[1] then

 

   begin

 

      Alert(c,"買進");

 

      hasPlot=true;

 

   end;

 

if hasPlot=true and c[1]>value1[1] and c<value1 then

 

   begin

 

      Alert(c,"賣出");

 

      hasPlot=false;

 

   end;

不好意思我是70歲以上對電腦不熟悉請多包涵, 但是我想value1=(highest(h[1],5)+lowest(L[1],5))/2;先測試[1](highest(h[1])+lowest(L[1]))/2這樣修改編譯不成功 ,抱歉多次打擾教授 謝謝您 我試圖學習

 

虎科大許教授 發文於   2025/10/23

學習找出錯誤,解決問題,是提升程式能力的必要過程。當我們遇到過很多問題,也逐一找到答案之後,以後遇到問題時,就更容易解決。若你遇到問題,沒想嘗試找出問題、解決問題,那你以後會遇到更多的問題。此外,找問題,往往很費時,當你的程式夠大(我就曾經遇過學生拿了四百多行的腳本,希望我幫忙看看問題出在哪裡),恐怕由於要花很多時間,而找不到可以協助的人。我曾經遇過一位客戶,程式執行的邏輯不如預期,希望我幫忙修改。我的回應是,付同樣的錢,與其叫我花時間找問題,不如我直接寫新的程式給他。你現在應該知道,一直找人幫你找問題,其實無法讓自己成長,也可能問題太複雜,而得不到協助。學著先自己面對問題,解決問題。真不行,再來論壇求助。

  • 按讚來自於
  • 2528899
虎科大許教授 發文於   2025/10/23

你應該要學會看錯誤訊息。第7行的hasPlot沒有宣告(被你改成hasAlert了)。先試著自己找問題,想辦法解決。不要一有錯誤就求救。

  • 按讚來自於
  • 2528899
Mr 洪 發文於   2025/10/23

放在"交易"腳本,有把plot改成Alert還是編譯失敗

 

顯示更多回應 發表回覆
Close