সর্বশেষ সম্পাদনা করেছেন invarbrass (১৯-০২-২০১০ ০০:৩৪)

টপিকঃ AmiBroker DSE, CSE ইমপোর্ট টুল

অনেকদিন আগে সহজ ভাই এ্যামিব্রোকারে ডিএসই-র EOD (End of day) ট্রেডিং ডাটা ইমপোর্ট করার জন্য একটি প্রোগ্রাম তৈরীর করা যায় কিনা অনুরোধ করেছিলেন। তখন AmiBroker-এর SDK ডাউনলোড করে একটু ঘাঁটাঘাঁটি করেছিলাম - এমনিতেই আমি ফাইন্যান্শিয়াল ক্যালকুলেশন-ফ্যালকুলেশন কম বুঝি, তার উপর AmiBroker এর অতি জটিল সি++ এপিআই দেখে আগ্রহ হারিয়ে ফেলেছিলাম। এছাড়া বিদেশী forex/স্টক এক্সচেন্জে যেমন কম্পিউটার-ফ্রেন্ডলী লাইভ ডেটাফীড পাওয়া যায়, ডিএসই/সিএসই-র জন্য এরকম কিছু খুঁজে পাই নাই। যেটা পাওয়া যায় সেটা এ্যানালাইয করা খুবই দুরুহ (এটা হিউম্যান-ফ্রেন্ডলী, কিন্তু কম্পিউটার-ফ্রেন্ডলী না  hairpull)

৩/৪ দিন আগে মাজহার ভাইয়ের ইমেল থেকে জানলাম সারিম ভাই এই ব্যাপারে কাজ করছেন - একটি জাভা সফটওয়্যার ডেভেলপ করছেন। ঐ সূত্রে মাজহার ভাইয়ের ব্লগে ঢুঁ মারলাম - উনার পোস্টে কিছু লিংক এবং অনেক দরকারী তথ্য, রিসোর্স পেয়ে গেলাম। তথ্যগুলো পেয়ে এবার অনেক সহজ হয়ে গেলো আমার জন্য। আজ সন্ধ্যায় কয়েক ঘন্টা গুঁতোগুঁতই করে বানিয়ে ফেললাম এটা:
http://www.mediafire.com/?owdyzwoatm2

http://www.mediafire.com/file/owdyzwoatm2/sharecsv.zip

যিপ ফাইলটা আনপ্যাক করলে sharecsv.exe প্রোগ্রামটা পাবেন।

sharecsv.exe উইন্ডোজ, মিন্ট, উবুন্টু, ফেডোরা এবং স্যুসে-তে সরাসরি চালানো যাবে (অন্যান্য সিস্টেমে <debian? slackware? archlinux? mac osx? opensolaris?> mono ফ্রেমওয়ার্ক ইন্সটল করে নিতে হবে - যদি না থাকে)। (আপনার লিনাক্সে যদি বানশী, এফ-স্পট, টমবয় বা গ্নোম-ডু ইত্যাদি সফটওয়্যারগুলো ইনস্টল করা থাকে, তাহলে mono অলরেডী ইনস্টল করাই আছে - প্রায় সব গ্নোম-বেইজড ডিস্ট্রোতেই কয়েক বছর ধরে mono থাকে) লিনাক্সে প্রোগ্রামটি এক্সিকিউটেবল করে নিতে হবে:

chmod +x sharecsv.exe

উইন্ডোজে .নেট ফ্রেমওয়ার্ক ২.০ লাগবে - তবে ৫ বছর আগের XP SP2 থেকেই এটা প্রি-ইনস্টলড থাকে - কাজেই এখানেও কোনো কিছু আলাদা করে ইনস্টল করতে হবে না।

প্রোগ্রামটা কমান্ড লাইনে (উইন্ডোজে DOS প্রমপ্টে) চালাতে হবে।

চালানোর পরে প্রোগ্রামটা biasl.net থেকে DSE এবং CSE শেয়ার মার্কেটের EOD ডেটা স্ক্রেপ করা শুরু করবে (বিকাল ৩টার পর চালাবেন) - এরপর AmiBroker কম্প্যাটিবল CSV ফরম্যাটের একটি ফাইল তৈরী করবে ফোল্ডারে। আমার AmiBroker ইনস্টল করা নাই তাই টেস্ট করতে পারছি না - আগ্রহীরা ট্রাই করে দেখে জানাতে পারেন।

এছাড়া প্রোগ্রামের সাথে যদি -v আর্গুমেন্ট দেন তাহলে কনসোলেও লাইভ ডেটা দেখাবে:

$./sharecsv.exe -v

compname     dltp   dhigh  dlow   dycp   dpm    dtrade   dvol
----------------------------------------------------------------
1STBSRS      1134   1187.75 1100   1150.25 -16.25 96       6050
1STICB       8800   9450   8700   8979.25 -179.25 15       135
1STPRIMFMF   35.2   39.8   33     36.6   -1.4   446      389500
2NDICB       2430   2435   2400   2484   -54    9        95
3RDICB       0      0      0      1917.5 0      0        0
4THICB       1875   1880   1870.25 1870   5      5        50
121650
...............
Calm... like a bomb.

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

অ্যামিব্রোকার নিয়ে আমিও একদিন একটু ঘাঁটাঘাঁটি করেছিলাম। কিন্তু এটি আরএসএস/এক্সএমএল/সিএসভি নেয় বলে দেখিনি। বিশেষত, এটি যদি নির্দিষ্ট সময় পর পর উল্ল্যেখ করা সোর্স থেকে এইসব ফরমেটে ডেটা নিতে পারে, তাহলে আমি সেগুলো সহজেই প্রোভাইড করতে পারতাম। কারণ আমার কাছে তো ডেটা আছেই, খালি এগুলোর ফিড করা দরকার।

[img]http://twitstamp.com/thehungrycoder/standard.png[/img]
what to do?

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

biasl.net কি আরও বেশি কম্পিউটার কম্পাটিবল ফরমেটে ডাটা দেয়?

আমি admin.dsebd.org/admin-real/mst.txt থেকেই ইনপুট নিছিলাম তাই ঝামেলা করতে হইছে।
জিনিসটা আরও ডেভেলপ করতে হবে ।
মাজহার ভাইয়ের পাঠানো মেইল থেকে কোট,
'if a stock trades on
both public and spot market, how will be the data'. I have to wait for
it till such situation comes.
এবং
we have add both public and spot transactions always.

Like this=====
open----- as usual
high---- the highest one, it may be in public, may be in spot.
low---- the lowest one, it may be in public, may be in spot.
close---- as usual.
volume---- summation of  both volumes. public volume+ spot volume.

আপনার টুল এ কি এটা করা আছে?

এবং আরেকটা টুল লাগবে,
http://www.dsebd.org/latest_share_price_all.php
এইটার থেকে ডাটা ইমপোর্ট করার জন্য । মাজহার ভাই যেটাকে DSNAP বলেছেন।
আপনি যদি এইটা নিয়ে আগান তাহলে আমি আর আগাবোনা। একই জিনিস ২জন করার তো দরকার নাই।

আর শুধু মিডিয়াফায়ারে না দিয়ে আপনি টুলটার একটা পেজ বানাতে পারেন। যেমন আমি আমার সাইটে রাখছি।
http://sarimkhan.atwebpages.com/index.p … ta-capture

সারিম'এর ওয়েবসাইট

লেখাটি CC by-nc-sa 3.0 এর অধীনে প্রকাশিত

সর্বশেষ সম্পাদনা করেছেন invarbrass (১৯-০২-২০১০ ০২:৪২)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

হেহে, এই মিনিট দশেক আগে latest_share_price_all.php-এর জন্য পার্সিং এন্জিনটা মোটামুটি খাড়া করে ফেলেছি। আগামীকাল ডেটা স্ট্রাকচার তৈরী করবো - এখন ঘুমাইতে যাই।

আমি biasl.net থেকে স্ক্রেপিং করতেছিলাম কারণ এদের ওয়েবপেইজে Ajax-এর জন্য JSON ফরম্যাটে ডেটাগুলো দেওয়া আছে - পার্স করা খুবই সোজা, পাইথনে ১০-১২ লাইনেই করা যাবে (তবে ওদের সাইটের য্যাসান ফরমেট একটু broken - এ্যানালাইয করার আগে কিছু এক্সট্রা প্রসেসিং, কাটিংছাটিং করে নিতে হয়)। কিন্তু একটু আগে মাজহার ভাই বললো biasl থেকে ডেটা না নিতে  hairpull কিন্তু এদিকে কোডার ভাই তো তার যেনেক্সবিডির সাবডোমেইনে biasl-এর পেইজ লিংক করতেছে?  thinking

আবার কোনোটার সাথে কোনোটার মিল নাই। dsebd-র সাথে biasl-এর মিল নাই (সম্ভবত: biasl-এর রিপোর্টে CSE ও DSE-র কম্বাইন্ড aggregated হিসাব দেয় - আলাদা করে কিছু নাই)। আবার dsebd-র latest_share_price_all.php পেইজের সাথে mst.txt-এর মধ্যেও গড়মিল। দুপুর ৩টার পরে ট্রেডিং বন্ধ হয়ে গেলে তো দিনের ডেটা ফ্রীজ হয়ে যাওয়ার কথা - নাকি বাংলাদেশে ২৪ ঘন্টা অনলাইন ট্রেডিং চলে?  thinking latest_share_price_all.php -এ লেটেস্ট টাইম দেখাচ্ছে বিকাল ৫টা...  confused

সারিম লিখেছেন:

মাজহার ভাইয়ের পাঠানো মেইল থেকে কোট,
'if a stock trades on
both public and spot market, how will be the data'. I have to wait for
it till such situation comes.
এবং
we have add both public and spot transactions always.

Like this=====
open----- as usual
high---- the highest one, it may be in public, may be in spot.
low---- the lowest one, it may be in public, may be in spot.
close---- as usual.
volume---- summation of  both volumes. public volume+ spot volume.

পাবলিক আর স্পট ভলিউম আলাদা করে কোথায় দেয়া আছে? latest_share_price_all.php এবং BIASL-এ তো একটাই মাত্র ভলিউম দেয়া আছে। কোনটা স্পট ট্র্যানয্যাক্সন আর কোনটা পাবলিক তা বোঝা যাবে কেমন করে?  thinking mst.txt-তে অবশ্য আলাদা ক্যাটাগরীতে দেয়া আছে।

Calm... like a bomb.

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

crying crying crying crying crying
আপনি বুদ্ধিমানের মত কাজ করছেন । আমি তো স্টকের কিছুই বুঝিনা। তাই mst.txt নিয়েই ঘুটাইছি খালি।

mst.txt থেকে কিছু না দেখে খালি ম্যাচার দিয়ে ম্যাচ করে ইনপুট নেয়া।
তারপর একই কমপানির নাম দুইবার আসলেই বুঝা যাবে পাবলিক আর স্পট ভলিউম। তারপর একটা যোগ অংক।
এভাবে সহজেই করা যাবে মনে হয়।

কয়দিন মন খারাপ তাই programming নিয়া বসিনি।

dsebd.org অফিসিয়াল না? ঔখান থেকে ইনপুট নেয়াই ভাল হবে।

সারিম'এর ওয়েবসাইট

লেখাটি CC by-nc-sa 3.0 এর অধীনে প্রকাশিত

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

আমি ডিএসই থেকে যখন ডেটা নিতাম আমার সার্ভারের অবস্থা খারাপ হত। বায়াসেল থেকে নেয়ার পর সার্ভার কইতেই পারব না যে আমি রিমোট ফাইল গেট করতাছি।

ইনভারব্রাস ভাই আপনি জেসন কই পাইলেন?  surprised

আমি অবশ্য এখন আর স্টক সাইটের আপডেট করি না। কারণ শেয়ার ব্যবসায়ীরা কাড়ি কাড়ি টাকা করে। তাতে আমাদের লাভ কি? hehe কিছু কাছের মানুষের অনুরোধের জন্য স্টক সাইটটা বন্ধ করার ইচ্ছা থাকলেও করতে পারছি না। sad কারণ ওটা সার্ভারে ভালই প্রেসার দেয়। প্রতি দিন ৯০,০০০ এর মত পেজ হিট!  nailbiting worried

[img]http://twitstamp.com/thehungrycoder/standard.png[/img]
what to do?

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

ইনভার ভাই, আপনার সফটওয়ারটা ব্যবহার করে দেখলাম। বেশ দ্রুত কাজ করে। ধন্যবাদ এরকম কাজের একটা প্রোগ্রাম তৈরী করার জন্য। তবে একটা জিনিষ লক্ষ্য করলাম যে, biasl তাদের সাইটে ক্লোজ প্রাইস দেয়না। আপনি হয়ত ltp কে close price হিসেবে ব্যবহার করছেন। যেমন আপনার সফটওয়ার দিয়ে ডাউনলোড করা সিএসভি ফাইলে Aftabauto-র ক্লোজ প্রাইস 2131 দেখাচ্ছে কিন্তু ডিএসির সাইটে এটা 2129.25। সেক্ষেত্রে Amibroker-এ ইমপোর্ট করার পর কেন্ডেলটা একটু অন্য রকম দেখাবে।

এটার মধ্যে কি DSEGEN যোগ করা সম্ভব? ধন্যবাদ।

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

@nshop1
আপনি আমারটা ব্যবহার করে দেখতে পারেন, http://sarimkhan.atwebpages.com/index.p … ta-capture
এখান থেকে ডাউনলোড করতে পারবেন।
আমি mst.txt থেকে ইনপুট নিছি এবং DSEGEN অ্যাড করা আছে।

@invarbrass
আপনাকে মনে হয় রাতের আগে পাওয়া যাবে না। যাই হোক আপনি টুলটাকে আপডেট করেন কষ্ট করে,
python দিয়ে উবুন্টুর জন্য একটা GUI দিয়ে দেন।

সারিম'এর ওয়েবসাইট

লেখাটি CC by-nc-sa 3.0 এর অধীনে প্রকাশিত

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

আমি এই thread-টা আগে খেয়াল করিনি। সারিম ভাই বলাতে এখানে এলাম।
সবাইকে ধন্যবাদ।

আমি প্রায় তিন বছর ধরে এমিব্রোকারে ডাটা আপলোড করে স্টক চার্ট দেখে ব্যবসা করছি। আমি একা না। আরো প্রায় দুইশ থেকে তিনশ লোক একসাথে এই কাজ করছি। আমরা চার্ট দেখে কেনা বেচার সিদ্ধান্ত নেই।

সবার আগে কেউ কেউ এক্সেল দিয়ে আপলোড করতেন। পরে এক ভাই ডিডিইউ বানান। সেটা দিয়েই চলছিল। তারপর তৈরী হল ডিডিডি এবং ডিস্ন্যাপ। এগুলে দিয়ে সব কাজই করা যাচ্ছে। তবে এগুলা লিনাক্সে চলে না । এই দুইটা জিনিসের জন্য লিনাক্স ইউজ করতে পারছিলাম না।  সারিম ভাইকে বললাম, কি কর যায়? সারিম ভাই ঝটপট বানিয়ে ফেল্লেন একটা টুল। এটা ইওডি টুল। ট্রেড-টাইম টুল নয়। তবে তিনি বলেছেন অতি শিগগিরই ওটাও হয়ে যাবে।

আমার ব্লগে বিস্তারিত লিখেছি।

সংক্ষেপে এখানে শুধু বলছি, EOD-DATA-CAPTURE-TOOL  এবং TRADE-HOUR-DATA-CAPTURE-TOOL  পুরাপুরি ভিন্ন জিনিস, উদ্দেশ্য ও ব্যবহারও আলাদা। 

Main source of eod tool is the mst file.
and the source of trade-hour tool is this link: latest_share_price_all.php (also there r some other links in dse site). 

mst এবং ঐ পেইজের ডাটা ভিন্ন হবার কারণও আছে। 'closing price' and 'last traded price' is not the same thing.
'opening price' and 'yesterdays closing price' is not the same thing. Any type of error can distort our charts.

And we do not use biasl or other secondary/tertiary sites as data-source.  sometimes they provide old data. we need very very fresh data for business. no compromise.
--------------
by the way, stock business is not my primary occupation. and unfortunately I lost a big amount recently. and never made a big profit. almost 'no profit, no loss' situation.
If anyone here wants to trade via internet, can read my blog, I wrote methods.
dse and cse trade hours: 11am to 3pm.

লেখাটি CC by-nc-nd 3. এর অধীনে প্রকাশিত

১০ সর্বশেষ সম্পাদনা করেছেন sohoj (২০-০২-২০১০ ০১:১১)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

খুব ই ভালো লাগছে যে সবাই একসাথে কাজ করছেন। মাজহার ভাই যা বললো সেটাই আমাদের সবচেয়ে বেশি দরকার । আমাদের TRADE-HOUR-DATA-CAPTURE-TOOL বেশি দরকার।

Dsebd.org ছাড়া অন্য কোন সোর্স থেকে ডাটা নিলে ভুল ডাটা দেখায় যা আমাদের এনালাইসিস এ বিশাল সমস্যা করতে পারে কারন আমরা Buy Sell decision নেই চার্ট এন্যালাইসিস থেকেই।

হাঙ্গরিকোডার লিখেছেন:

অ্যামিব্রোকার নিয়ে আমিও একদিন একটু ঘাঁটাঘাঁটি করেছিলাম। কিন্তু এটি আরএসএস/এক্সএমএল/সিএসভি নেয় বলে দেখিনি। বিশেষত, এটি যদি নির্দিষ্ট সময় পর পর উল্ল্যেখ করা সোর্স থেকে এইসব ফরমেটে ডেটা নিতে পারে, তাহলে আমি সেগুলো সহজেই প্রোভাইড করতে পারতাম। কারণ আমার কাছে তো ডেটা আছেই, খালি এগুলোর ফিড করা দরকার।

সিএসভি  থেকে নেয় আর আমরা প্রায় দুই বছর ধরেই এটা করছি।

১১ সর্বশেষ সম্পাদনা করেছেন মাজহার (২০-০২-২০১০ ১৪:৪৫)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

হাঙ্গরিকোডার লিখেছেন:

অ্যামিব্রোকার নিয়ে আমিও একদিন একটু ঘাঁটাঘাঁটি করেছিলাম। কিন্তু এটি আরএসএস/এক্সএমএল/সিএসভি নেয় বলে দেখিনি। বিশেষত, এটি যদি নির্দিষ্ট সময় পর পর উল্ল্যেখ করা সোর্স থেকে এইসব ফরমেটে ডেটা নিতে পারে, তাহলে আমি সেগুলো সহজেই প্রোভাইড করতে পারতাম। কারণ আমার কাছে তো ডেটা আছেই, খালি এগুলোর ফিড করা দরকার।

খুব ভাল একটা বিষয় উল্লেখ করেছেন ভাই। ডেটা ফিড।

আমরা এখনো ম্যানুয়াল ফিড করি।
DSE SITE > DSNAP > CSV file > Manual import to Amibroker. এই কাজে খুব সামান্যই  সময় খরচ হয়। তবে trade চলাকালে এটাও বিরক্তিকর ঠেকে।
Auto-feed -এর দরকার অনুভব করি।
--------------

যেমন yahoo server থেকে amiquote এর মাধ্যমে auto-feed করা যায়। সমস্যা হলো, yahoo-server-এ DSE-data নেই। আমরা নিজেরাই একটা ব্যবস্থা করার চিন্তা শুরু করেছি। সেই সার্ভার থেকে আমাদের এমিব্রোকারে অটো-ফিড হবে। তার আগে সেই সার্ভারে DSE-site থেকে ডেটা গিয়ে জমা হতে থাকবে। পুরাটাই অটো এবং ১ মিনিট-ইন্টারভ্যাল csv file তৈরী হতে থাকবে। এর জন্য কিছু সফটওয়্যার বানিয়ে নিতে হবে। বিরাট কর্মযজ্ঞ! এ ধরণের কাজ করে থাকে বিদেশী ব্রোকার হাউজগুলো। আমাদের দেশে সেরকম স্মার্ট কোনো হাউজ নেই।

এখানে একটা বিরাট সমস্যাও আছে, DSE site খুবই slow, আর মাঝে মাঝে কিছুক্ষনের জন্য data-update বন্ধ থাকে।
মনে হয় ওই সাইটের ব্যান্ড-উইডথ বাড়াতে হবে।
------------------

আরেকটা উপায় আছে। একটা dll বা plugin আছে যেটা দিয়ে সরাসরি DSE-site থেকে আমাদের ঘরের পিসিতে এক্সেল ফাইলের ভিতর দিয়ে এমিব্রোকারে ডাটা ফিড করা যায়। DSE-SITE > EXCEL (customized) > AMIBROKER.
এটা ইতিমধ্যেই তৈরী করেছেন আমাদের এক ভাই (নাসিম ভাই)। এটা দিয়ে intra-day chart করা যাচ্ছে। ১ /২ / ৫ / ১০ মিনিট ... যে কোনো ইন্টারভ্যাল, customizable. তবে DSE-site slow বলে কিছু সমস্যা হচ্ছে। এটা দিয়ে অবশ্য 'till now data' পাওয়া যায় না।

------------
EOD-data: এ ক্ষেত্রে manual feed is enough, হাতে ২০ ঘন্টা সময় থাকে। No more tool is needed, we have DDD, we have DSE.jar. These 2 are enough.
-------------
Till-now-data during trade hour: we have DSNAP for windows. We need a tool for working on Linux. We also feel need of quick and auto-feed system.
-------------
Itraday data: We already have 2 tools. Both work in windows. But we feel strong difficulty to capture data from DSE site (very slow site). We feel need of another intermediary server and some more smart tools.
-------------------

সুতরাং বোঝা গেল, কোন কোন কাজ আমাদের এখনো বাকি আছে। যেগুলো সমাধান হয়ে গেছে, সেগুলো নতুন করে আবার করার দরকার নেই। বৃথা সময় খরচ।
প্রয়োজন সমন্বিত উদ্যোগ। নচেৎ চক্র পুনরাবিষ্কার হইবার যোগ আছে।

আমরা on payment প্রোগ্রামার নেয়ার সিদ্ধান্ত নিয়েছিলাম একসময় (বড় কাজগুলোর জন্য)। আপাততঃ উদ্যোগ পিছিয়ে গেছে। বিচ্ছিন্নভাবে কিছু কাজ হচ্ছে।

কেউ কেউ হতাশ হয়ে ব্যবসা বন্ধ করে দিচ্ছে। SEC ঘন ঘন আইন বদলায় বলে মার্কেট অস্থির, ঝুপ করে বড় ধরনের লস হয়ে যায়। তাই অনেকেই এখন আর এনালাইসিসের উপর ভরসা রাখতে পারছে না, গুজবের দিকে ঝুঁকে পড়ছে। চার্ট এনালাইসিস করে তো আর SEC'র মনের খবর পাওয়া যায় না!

লেখাটি CC by-nc-nd 3. এর অধীনে প্রকাশিত

১২ সর্বশেষ সম্পাদনা করেছেন sohoj (২০-০২-২০১০ ১৪:৪৫)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

মাজহার লিখেছেন:

কেউ কেউ হতাশ হয়ে ব্যবসা বন্ধ করে দিচ্ছে। SEC ঘন ঘন আইন বদলায় বলে মার্কেট অস্থির, ঝুপ করে বড় ধরনের লস হয়ে যায়। তাই অনেকেই এখন আর এনালাইসিসের উপর ভরসা রাখতে পারছে না, গুজবের দিকে ঝুঁকে পড়ছে। চার্ট এনালাইসিস করে তো আর SEC'র মনের খবর পাওয়া যায় না!

lol2 lol2 lol2 lol2 ভাই যা বলছেন। মাজহার ভাইয়ের মতের প্রাধান্য দিয়ে শেয়ার বেচা কেনার আলোচনা বাদ দিলাম

১৩

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

এই ফোরামে শুধুমাত্র সফটওয়্যার ও ওয়েবসাইট সংক্রান্ত আলোচনা করতে চাই।
শেয়ার কেনাবেচার আলাপ করতে চাই না।

লেখাটি CC by-nc-nd 3. এর অধীনে প্রকাশিত

১৪ সর্বশেষ সম্পাদনা করেছেন invarbrass (২০-০২-২০১০ ২১:৩১)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

http://www.dsebd.org/latest_share_price_scroll_l.php <- দুর্ভাগ্যবশত:, আজকে এই পেইজটা স্ক্রেইপ করার চেষ্টা করতেছিলাম। টার্গেট খুবই সিম্পল - ডকুমেন্ট থেকে লাস্ট আপডেটের তারিখটা বের করা (শেয়ার প্রাইস টেবিলের উপরেই আছে)।

জীবনে কোনোদিন এত জঘন্যরকমের ইনভ্যালিড HTML ডকুমেন্ট দেখি নাই! angry

ইন্টারনেটে যেকোনো সাইট থেকে র্যান্ডম যেকোনো একটা HTML ডকুমেন্ট যদি কাগজে প্রিন্ট করে একপাল ছাগলকে চিবাইতে দেওয়া হয়, এবং সেই চিবানো কাগজের টুকরাগুলা একসাথে হিজিবিজি করে জোড়াতালি মেরে আবার কম্পিউটারে টাইপ করা হয় - সেই ছাগল-জাত HTML ডকুমেন্টও dsebd.org-এর রামছাগল ডেভেলপারদের তৈরীকৃত পেইজের চাইতে বেশি ভ্যালিড হবে!  angry angry angry

কয়েক বছর আগে শুনছিলাম ডিএসই বিদেশী কনসাল্ট্যান্ট কোম্পানী দিয়ে ওদের অটোমেশনের কাজ করাইছে (দেশী কোম্পানীগুলোকে বাদ দিয়া)। সা@ইফুর'সের অনলাইন ইনকাম কোর্সে ৩দিন "কেলাশ" করে ২ দিন ফাঁকি মারছে এইরকম পাবলিকও ডিএসই-র HTML কোড দেখলে বমি করে দিবে!

ডকুমেন্টটা যদি ম্যানুয়ালী নিজের হাতে টাইপ করে কোড করতো তাইলেও না হয় মেনে নেয়া যেতো। কিন্তু তা না, রামগর্দভগুলা পেইজ ডিজাইন করছে আবার গাধাসম্রাটদের প্রিয় টুল মাইক্রোসফট ফ্রন্টপেইজ দিয়া! hairpull গাধাগুলা আবার রাইট ক্লিক ডিজেবল করে রাখছে!

এদের সাইটের ডেভেলপারগুলাকে বস্তা ভরে ঢাকা ক্যান্টনমেন্টে নিয়ে ট্যাংকের তলায় ফেলে পিষে মারা উচিৎ - পাবলিক সেইফটি হ্যাযার্ড।  angry angry angry

সিরিয়াসলী, দেশের সবচাইতে বড় স্টক এক্সচেন্জের ওয়েবসাইট এত জঘন্য কেমনে হয়?  hairpull

Calm... like a bomb.

১৫

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

চমৎকার মন্তব্য করেছেন ইনভারব্রাস ভাই।

আমরা আমাদের ফোরামে এত ভদ্র ভাষা ব্যবহার করি না। উরাধুরা গালাগালি করি।

লেখাটি CC by-nc-nd 3. এর অধীনে প্রকাশিত

১৬

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

আরও বড় কথা এত বিশাল একটা মার্কেটের ডেটা ফিড নাই!

@মাজহার ভাই
গালাগালি করে লাভ কি? তার চেয়ে বরং পারলে তাদেরকে প্রেসার দিন। আপনারা তো সম্ভবত সংঘটিত। সুতরাং আপনার চাপে কাজ হতে পারে।

[অফটপিকঃ আপনার প্রোফাইলের ছবিটা দেখে আপনাকে খুব বেশি পরিচিত মনে হচ্ছে  thinking]

[img]http://twitstamp.com/thehungrycoder/standard.png[/img]
what to do?

১৭

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

ইনভারব্রাস ভাই বুঝছি খুব ঝামেলা পোহাচ্ছেন আমাদের জন্য। কি আর করবেন এই বাংলাদেশে সবই সম্ভব। কে জানি কোথায় লিখেছিলো যে বাংলাদেশের মানুষ প্রচন্ড কষ্ট করতে পারে তাই তারা পৃথিবির যেকোনো জায়গায় স্হান করে নিতে পারে। এবার বুঝছেন আমরা যারা মার্কেটে টিকে আছি কতো কষ্ট করে টিকে আছি। big_smile big_smile

তারা দুইদিন পর পর লিংক পরিবর্তন করে, নতুন নিয়ম বানায় আরো কতো কি? যেমন খুশি তেমন সাজো প্রতিষ্ঠান dontsee dontsee

১৮

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

হাঙ্গরিকোডার লিখেছেন:

আরও বড় কথা এত বিশাল একটা মার্কেটের ডেটা ফিড নাই!

@মাজহার ভাই
গালাগালি করে লাভ কি? তার চেয়ে বরং পারলে তাদেরকে প্রেসার দিন। আপনারা তো সম্ভবত সংঘটিত। সুতরাং আপনার চাপে কাজ হতে পারে।

[অফটপিকঃ আপনার প্রোফাইলের ছবিটা দেখে আপনাকে খুব বেশি পরিচিত মনে হচ্ছে  thinking]

কোডার ভাই তারা আমাদের প্রেসারে নড়ে না কিন্তু ঠিক জায়গার প্রেসার এলে আগের দিন লোন অফ করে পরের দিন লোন চালু করে।

১৯ সর্বশেষ সম্পাদনা করেছেন সারিম (২০-০২-২০১০ ২২:৩০)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

@invarbass
ভাই আগে একটা কথা বলে নেই। আপনার দাতভাংগা নামটা চেন্জ করা যায় না?অথবা সংক্ষিপ্তকরন।

যাই হোক আমি সন্ধায় ২ ঘন্টা ঘুতাইয়া http://www.dsebd.org/latest_share_price_scroll_l.php থেকে ডাটা ক্যাপচারার বানাই ফেলসি । http://sarimkhan.atwebpages.com/download/dsnap.jar
এখানে পাবেন।
এখন 00DSEGEN মানে ইনডেক্স ছাড়া আছে কারন কই থেকে ইনডেক্স নিতে হবে সেইটা ঠিকমত বুঝিনাই।

আজকে রাতে কমপ্লিট করে ফেলবো।

ওই .............. দের আর কি বলব। আমরা ছাত্ররা আবার প্রকাশযোগ্য গালি দিতে পারিনা। তাই এখানে......................................
জাভার html পারসার ব্যবহার করলে গোটা ডকুমেন্ট এক লাইনে চলে আসে, কোন space নাই, এরকম 1STBSRS11341187.75110011101180.5-46.5966050
বুঝেন মজা।
শেষ অবশ্য পর্যন্ত w3 দিয়া সহজেই হয়ে গেছে।
আর গুগল ক্রোম এ view-source: যোগ করে দিলেই সোর্স কোড দেখা যায় (view-source:http://www.google.com । মনে হয় এটার জন্যই আপনি রাইট ক্লিক করতে চাইছিলেন।

২০ সর্বশেষ সম্পাদনা করেছেন invarbrass (২০-০২-২০১০ ২২:৪৩)

Re: AmiBroker DSE, CSE ইমপোর্ট টুল

সারিম লিখেছেন:

যাই হোক আমি সন্ধায় ২ ঘন্টা ঘুতাইয়া http://www.dsebd.org/latest_share_price_scroll_l.php থেকে ডাটা ক্যাপচারার বানাই ফেলসি । http://sarimkhan.atwebpages.com/download/dsnap.jar
এখানে পাবেন। আজকে রাতে কমপ্লিট করে ফেলবো।

ওই .............. দের আর কি বলব। আমরা ছাত্ররা আবার প্রকাশযোগ্য গালি দিতে পারিনা। তাই এখানে......................................
জাভার html পারসার ব্যবহার করলে গোটা ডকুমেন্ট এক লাইনে চলে আসে, কোন space নাই, এরকম 1STBSRS11341187.75110011101180.5-46.5966050
বুঝেন মজা।
শেষ পর্যন্ত w3 দিয়া সহজেই হয়ে গেছে।

শেয়ার প্রাইসের টেবিলটা আছে latest_share_price_all.php পেইজে। এই পেইজটা মোটামুটি ঠিকই আছে - পরশুদিনই পারসার রেডী করে ফেলেছিলাম।

কিন্তু ঐ ডকুমেন্টে লেটেস্ট আপডেটের তারিখ এবং সময় দেয়া নাই, তাই আলাদা করে latest_share_price_scroll_l.php থেকে আজকে স্ক্রেপ করার চেষ্টা করছিলাম। এই ডকুমেন্টটা পার্স করার চেষ্টা করেন  hairpull - তবে আগে থেকে এক বোতল ঠান্ডা পানি এনে রাখবেন মাথায় ঢালার জন্য।  tongue

শেষ পর্যন্ত করতে পেরেছি - তবে XDOM/XPATH দিয়ে না, রেগুলার এক্সপ্রেশন দিয়ে প্যাটার্ণ ম্যাচিং করে। এই হ্যাক আমার নিজেরই পছন্দ হইতেছে না, ওরা ডিজাইন পাল্টাইলে কোডটা হয়তো ব্রেক করতে পারে।

আপনারটা জাভা ডিস্ন্যাপটা ট্রাই করে দেখবো। আপনার কোডটা মনে হয় http://cgi.w3.org/cgi-bin/html2txt ব্যবহার করছে...

Calm... like a bomb.